当前位置 主页 > 服务器问题 > nginx问题汇总 >

    Nginx的信号是怎么控制的?

    栏目:nginx问题汇总 时间:2018-12-12 15:24

      Nginx简介
      Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP的代理服务器。Nginx由俄罗斯的Rambler.ru站点开发,而且官方测试Nginx可以支撑五万并发。
      Nginx官网:http://nginx.org
      本文主要讲解Nginx运行后如何控制它,以便它的停止或者重新启动。
      // 启动和停止nginx
      当前目录:/usr/local/bin/nginx
      启动:
      ./sbin/nginx
      停止 :
      kill -INT master 主机进程号
      Nginx信号量
      Nginx主要是通过信号量来控制Nginx,主进程编号默认写入文件nginx.pid中,可以通修改配置文件nginx.conf修改修改文件的名称。
      Nginx主进程支持的信号如下:
      信号量使用方式
      具体讲解
      TERM,INT :kill -TERM(INT)      nginx主进程号或者kill -TERM(INT)
      ——cat/usr/local/nginx/logs/nginx.pid ——,   nginx的进程马上被关闭,不能完整处理正在使用的nginx的用户的请求,等同于 /usr/local/nginx -s stop
      QUIT:kill -QUIT              nginx主进程号 优雅的关闭nginx进程,在处理完所有正在使用nginx用户请求后再关闭nginx进程,等同于/usr/local/nginx -s quit
      HUP:kill -HUP               nginx主进程号 nginx进程不关闭,但是重新加载配置文件。等同于/usr/local/nginx -s reload
      USR1:kill -USR1          nginx主进程号 不用关闭nginx进程就可以重读日志,此命令可以用于nginx的日志定时备份,按月/日等时间间隔分割有用
      USR2:kill -USR2          nginx主进程号 nginx的版本需要升级的时候,不需要停止nginx,就能对nginx升级
      WINCH:kill -WINCH     nginx主进程号 配合USR2对nginx升级,优雅的关闭nginx旧版本的进程。
      利用Nginx这些信号量在不必关闭进程的时候就可以控制nginx的日志分割以及nginx的升级之类的内容,随着对Nginx的逐步深入更加觉得Nginx区区五万行的代码就能做到这么厉害,着实佩服了!