使用信号量管理nginx进程,及其对应的命令行命令

使用信号量管理nginx进程更加快速方便,命令行命令其实就是对应的信号量。

nginx启动时对生成一些子进程,子进程数量由cpu数量决定,但是也可以在配置子文件中修改。一般使用信号量只管理主进程,子进程由主进程管理。

nginx常用信号量量命令stop、reload、quit、reopen

kill -15 PID [ kill -s SIGTERM PID ] [ nginx -s stop ]
立即停止nginx,即使有正在处理中的连接也会停止。

kill -1 PID [kill -s SIGHUP PID ] [nginx -s reload ]
nginx重载配置文件,根据配置文件生成新的子进程(数量取决于配置文件)。并通知旧的子进程处理完当前连接后关闭。这个过程中新旧子进程可能同时存在,这个命令实现了不停机生效新的配置,完成服务器的平滑升级。

kill -3 PID [ kill -s SIGQUIT PID ] [ nginx -s quit ]
关闭监听句柄,处理完当前连接后关闭进程

kill -10 PID [ kill -s SIGUSR1 PID ] [ nginx -s reopen ]
日志切割,nginx长时间运行日志文件会越来越大,有时候我们想把日志文件分开保存。当把日志文件剪切走时,nginx就没有地方写日志了。这时候就要使用reopen命令,新建一个日志文件,继续记录日志。

nginx其他的信号量命令

kill -12 PID [kill -s SIGUSR2 PID ]
新打开一个nginx主进程,新旧主进程同时存在,用于nginx的热部署

kill -28 PID [ kill -s SIGWINCH PID ]
对nginx主进程使用,使用时子进程关闭,主进程进入休眠状态
reopen int usr1 usr2 winch

你可能感兴趣的:(使用信号量管理nginx进程,及其对应的命令行命令)