nginx master进程是服务连续性的“中枢神经”,负责自动拉起失效worker、零中断重载配置、统一信号调度、权限分离、集中日志与状态协调。

Nginx 的 Master 进程本身不处理请求,但它通过一套轻量、专注、可预测的管理机制,成为服务连续性的“中枢神经”。它不靠单点永生,而是靠快速响应、职责隔离和协同设计来守住服务底线。
自动拉起失效 Worker 进程
Worker 进程是实际干活的,但可能因内存越界、第三方模块缺陷或极端请求而崩溃。Master 会持续监听其退出信号(如 SIGSEGV、SIGKILL 或非零退出码)。一旦发现异常退出,立刻 fork 新进程补位——这个过程毫秒级完成,用户请求几乎无感知。日志中会出现类似 "worker process 12345 exited on signal 11" 的记录,便于定位问题源头。
零中断重载配置(nginx -s reload)
当执行重载命令时,Master 不会杀掉正在运行的 Worker。它先校验新配置,再启动一批新 Worker;旧 Worker 继续处理已建立的连接,直到全部完成才优雅退出。整个过程没有连接丢弃、没有请求失败,真正实现“边跑边换轮子”。
统一信号调度与权限分离
所有关键操作(如平滑升级二进制、优雅关闭、日志重开)都由 Master 接收并解析系统信号(SIGHUP、SIGUSR2、SIGUSR1 等),再统一下达指令。同时,Master 以 root 权限启动,负责绑定 80/443 端口、读取配置、创建监听套接字;而 Worker 降权运行(如 www-data),只处理业务逻辑。这种权限与职责分离,既保障了安全性,又避免了因 Worker 权限过高导致的连锁风险。
集中式日志与状态协调
Worker 将日志内容写入管道或共享内存,由 Master 统一落盘。这减少了多进程并发写磁盘带来的竞争和抖动,也避免某个 Worker 卡死导致日志停滞。此外,Master 还通过 accept_mutex 控制多个 Worker 对新连接的争抢,防止“惊群”,让连接分发更平稳,间接提升整体响应一致性。











