zoukankan      html  css  js  c++  java
  • asp.net core2 Centos上配置守护服务(Supervisor)

    上一篇我们存在三个文件

    问题1:ASP.NET Core应用程序运行在shell之中,如果关闭shell则会发现ASP.NET Core应用被关闭,从而导致应用无法访问,这种情况当然是我们不想遇到的,而且生产环境对这种情况是零容忍的。

    问题2:如果ASP.NET Core进程意外终止那么需要人为连进shell进行再次启动,往往这种操作都不够及时。

    问题3:如果服务器宕机或需要重启我们则还是需要连入shell进行启动

    为了解决这个问题,我们需要有一个程序来监听ASP.NET Core 应用程序的状况。在应用程序停止运行的时候立即重新启动。这边我们用到了Supervisor这个工具,Supervisor使用Python开发的。

    安装Supervisor

    yum install python-setuptools

    easy_install supervisor

    配置Supervisor

    mkdir /etc/supervisor

    echo_supervisord_conf > /etc/supervisor/supervisord.conf

    将文件尾部的配置

    #进入目录
    cd /etc/supervisor/

    #打开文件 vi supervisord.conf
    [program:OneHopeProject]
    command=dotnet TestAspNetCoreWeb.dll
    directory=/root/www/Demo1
    autorestart=true
    stderr_logfile=/var/log/TestAspNetCoreWeb.err.log
    stdout_logfile=/var/log/TestAspNetCoreWeb.out.log
    environment=ASPNETCORE_ENVIRONMENT=Production
    user=root
    stopsignal=INT

    在文件的末尾加入以上代码然后用:wq保存,可以另外存放一个配置文件,那样配置方式又不一样了。注意文件的路径,我就是被这个路径坑了好久,可以到对于的文件夹下看错误的日志。

    运行supervisord,查看是否生效

    supervisord -c /etc/supervisor/supervisord.conf

    ps -ef | grep WebApplication1

    如果没生效,则用

    #更新新的配置到supervisord
    supervisorctl reload

     #重新启动配置中的所有程序

      supervisorctl update

    
    

     至此关于ASP.NET Core应用程序的守护即配置完成。

    常用命令

    # 查看所有action
    supervisorctl help
    
    # 控制所有进程
    supervisorctl start all
    supervisorctl stop all
    supervisorctl restart all
    
    # 控制目标进程
    supervisorctl stop shadowsocks
    supervisorctl start shadowsocks
    supervisorctl restart shadowsocks
  • 相关阅读:
    AndroidApplication Fundamentals(Android应用基础)
    当汇错款时该怎么办?
    VS2005控制台程序修改nb0文件
    nand flash 扇区的管理以及初始化
    Androidz之Activity概要学习
    Android开发者必备的42个链接
    Android Activity形象描述
    一个前端妹子的悲欢编程之路
    提高工作效率的几个小技巧
    前端几个常用简单的开发手册拿走不谢
  • 原文地址:https://www.cnblogs.com/LonelyCode/p/9070113.html
Copyright © 2011-2022 走看看