Nginx进程结构与热部署

进程结构图

使用共享内存进行通行的。

Linux的信号量管理机制

输入命令: kill -l

 常见信号量

利用信号量管理Nginx进程

使用信号量管理master和worker

Master进程

 Worker进程

 命令行:

输入以下命令:

ps -ef | grep nginx

 你会发现worker子进程会和父亲进程master进行绑定。

 worker默认会自动监测有几颗cpu,然后进行绑定。

进入nginx.conf命令:vim /etc/nginx/nginx.conf

 如果你将worker_processes auto; 改为 2 。

然后杀掉nginx , 再启动即可,命令如下:

ps -ef | grep nginx   // 查看进程

kill xxxxx

/usr/sbin/nginx  // 重启 

如果忘记重启命令  可以输入以下
rpm -ql nginx | grep bin

你会发现真的就两个worker了

 你可以输入 lscpu ,查看自己的cpu数。

也可以给nginx后面接一个信号量进行管理

 /usr/sbin/nginx -s stop

/usr/sbin/nginx -s reload 重启

配置文件重载的原理真相

reload重载配置文件的流程

1、向master进程发送HUP信号(reload命令)

2、master进程检查配置语法是否正确

3、master进程打开监听端口

4、master进程使用新的配置文件启动新的worker子进程、

5、master进程向老的worker子进程发送QUIT信号

6、旧的worker进程关闭监听句柄,处理完当前连接后关闭进程

不停机生效新的配置

 Nginx的热部署

热升级的流程

1、将旧的nginx文件替换成新的nginx文件

2、向master进程发送USR2信号

3、master进程修改pid文件,加后缀.oldbin

4、master进程使用新nginx文件启动新master进程

5、向旧的master进程发送WINCH信号,旧的worker子进程退出

6、回滚情形:向旧master发送HUP,向新的master发送QUIT

输入以下命令查看安装目录:

/usr/sbin/nginx -V

 热部署  新旧平缓、

https://blog.csdn.net/qq_42036824/article/details/87868665

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值