Nginx进阶
这篇文章我们不会谈nginx的用法,我们会来谈谈 何为Nginx,它是怎么运行的,运行的特性是什么
先来介绍下Nginx运行的FEATURES
维持Nginx最基本的程序——master && workers 进程
NGINX的运行依靠 一个master,以及很多个workers进程。master进程的主要作用就是读写并且验证配置文件(nginx.conf)的正确性。那wokers呢?其实他是master的“小弟”,受着master进程所控制,并且所有的nignx服务都是通过wokers维系起来的,通过wokers处理他们的请求。master判断完配置文件后,根据配置文件的正确性,选择性地叫workers进程进行更新。
当然,workers的数量是可以人为控制的,就在nginx.conf顶部的
worker_processes auto;
字段中,但它默认值为 auto,会自动根据你服务器核心数量、硬盘io情况等,自动配置workers的数量,一般都不更改。
一个master操纵workers的例子
当你修改了 nginx.conf 配置文件后,直接启 Nginx 服务会导致所有连接中断。Nginx 提供了优雅的热重载方式,只需执行:
1 | nginx -s reload |
这条命令会叫 master 进去重新加载配置。master 收到信号后,先会检查新配置的语法是否正确。
如果配置无误,
master会启动新的worker进程,并通知旧的worker进程退出。如果配置不对,
master会回滚,继续使用旧配置。
Comments