7. nginx进程架构

1. nginx应用默认会开启一个master进程, 一个worker进程. 一般生成环境中worker的进程数跟cpu的核数保持一致, 这样可以发挥多核cpu的优势. 通过配置 worker_processes 调整worker进程的数量.

2. nginx reload流程: 1) 向master进程发送HUP信号(reload命令); 2) master进程会检查配置文件是否正确; 3) master进程会打开配置文件中的配置的所有的端口; 4) master进程会用新的配置启动新的worker(新的worker数由worker_processes配置决定); 5) master进程向所有的老的worker发送QUIT信号; 6) 老的worker处理完当前连接后结束进程. 所以在执行完reload命令后, 在一段时间内, worker数会大于worker_processes数, 因为nginx为了平滑的加载配置项, 会先创建新的worker, 然后再优雅的结束老的worker, 在一段时间内新老worker并存.

posted @ 2019-05-18 11:15  dowait  阅读(149)  评论(0编辑  收藏  举报