您当前的位置: 首页 > 学无止境 > 心得笔记 网站首页心得笔记
nginx-nginx信号量
发布时间:2017-11-23 12:26:20编辑:雪饮阅读()
用ps命令可以查看到nginx的进程信息
ps aux|grep nginx
会发现有master和worker两个进程,其中master是主进程worker是子进程
进程号就是pid
nginx信号
通过信号的方式干掉进程如
kill –INT 26652
发现主进程干掉后,子进程也跟着不见了
各信号量说明:
TERM,INT信号:
快速的杀死主进程
QUIT信号:
优雅的杀死主进程,查找该主进程的所有子进程,依次将请求结束后的子进程关闭,最后再关闭主进程
HUP信号:
优雅的读取新的配置文件,开启新的进程读取新的配置文件,然后顺手优雅的关闭旧的进程。旧进程渐渐的几秒钟后消失了,新的进程得到新的配置文件
修改nginx的默认文档
使用javascript测试hup信号的不断线重载配置
window.location.href=window.location.href;
USR1信号量:
在linux中文件是以inode为真正的存储节点,例如你要备份nginx的日志,于是将log文件mv为log2但是此时你会发现log2的文件仍然不断的被nginx写入日志,这是因为nginx只认inode而不认文件名,此时你若新建一个空的log文件,nginx照样继续写入log2.要想让它写入新的文件必须要使用USR1信号量
如kill -USR1 26733
USR2与WINCH信号量:
这两个信号量一般是配合使用的,比如你现在的nginx是1.4.2,然后过几天有了1.4.6为了升级会导致新的文件覆盖旧的文件,此时这两个信号量可使得旧的进程正常工作到结束为止,新的进程也以新的版本启动。
nginx的日志目录logs下用nginx.pid中存放了nginx当前启动的进程号,所以也可以利用这个文件结合cat命令做返回值,则kill不用每次去找进程号了。直接执行如下命令
kill -HUP `cat logs/nginx.pid`
注意:这里是反引号而不是引号
关键字词:nginx,信号量