平凡也就两个字: 懒和惰;
成功也就两个字: 苦和勤;
优秀也就两个字: 你和我。
跟着我从0学习JAVA、spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美!
关注微信公众号【 IT特靠谱 】,每天都会分享技术心得~
Nginx之启动、停止和重载配置文件
1.启动Nginx
直接执行nginx可执行文件即可启动nginx服务。
(1)windows系统下:双击“nginx.exe”可执行文件即可启动
(2)linux系统下:进入nginx安装目录的sbin目录中执行启动命令
# 启动nginx
./nginx
启动nginx服务后,可以执行如下命令来查看运行中的master主进程和worker工作进程列表。
# 查看nginx进程
ps -ax | grep nginx
2.停止Nginx
停止nginx服务的方式有两种:stop(直接停止)和quit(优雅停止)。
stop方式会立即停止nginx的主进程和工作进程,会立即终止工作进程正在处理的request请求,在业务层面上来看,可能会导致一些异常。而quit方式更加优雅,quit方式会等待worker工作进程完成当前正在处理的request请求后,才会停止nginx服务。
(1)直接停止nginx服务命令:
nginx -s stop
(2)优雅nginx服务命令:
nginx -s quit
停止nginx服务的信号也可以在Unix工具的帮助下发送到nginx进程,例如“kill”命令。我们可以找到nginx的进程ID(默认情况下,nginx主进程的ID号存放在nginx.pid文件中,该文件一般在/usr/local/nginx/logs或/var/run目录下),然后执行下面的命令就可以优雅的停止nginx服务了。假设nginx主进程ID为1231,则kill命令优雅停止nginx服务命令:
kill -s QUIT 1231
扩展知识:除了查看nginx.pid文件内容获取主进程ID号以外,我们还可以执行 “ps -ax | grep nginx”命令来获取运行中的nginx主进程和工作进程信息(包括进程ID)。
3.重新加载配置文件
如果我们修改了nginx.conf配置文件的内容,那么新的内容不会立即生效。只有重新启动nginx服务或执行重新加载配置文件的命令(nginx -s reload)后才会生效。重新加载配置文件的命令:
nginx -s reload
nginx -s reload 命令执行后的流程:master主进程接收到reload重新加载配置文件的信号后 -----》master进程会先检查新配置文件的语法是否正确-----》尝试应用新的配置-----》如果生效成功,主进程则创建新的worker工作进程,且发送停止命令给旧的worker工作进程让其停止,旧的worker工作进程收到停止命令后就不再接收新的connections请求连接了,等当前正在处理的requests都处理完后,旧的worker工作进程就exit退出;如果新的配置存在问题,主进程则回滚应用的新的配置,继续使用旧的配置文件。
博主微信公众号:IT特靠谱,学习更多开发实战技巧!