nginx进程模型

nginx进程模型是:多进程+多路复用
nginx 进程分为 master 进程 和 worker 进程
在nginx正在运行的服务器上 执行 ps -ef |grep nginx 可以看到有两个nginx进程,一个 master 一个 worker,如下:

[root@zk03 nginx]# ps -ef |grep nginx
root 68615 1 0 1月23 ? 00:00:00 nginx: master process sbin/nginx
nobody 76175 68615 0 19:43 ? 00:00:00 nginx: worker process
root 97759 64059 0 23:27 pts/2 00:00:00 grep --color=auto nginx

一个mster进程下有多个 worker进程 。当nginx收到一个请求,master会想worker发出信号,然后通过worker进程去处理。每个worker进程都是被master进程管控。一个用户请求只能由一个woker进程去处理。而且多个worker进程之间会有竞争。每个woker进程下是多路复用。如下:

nginx进程模型及相关配置_master

nginx 配置 简介 :

#user nobody; 用户 使用哪个用户运行nginx进程。
worker_processes 1; 工作进程数
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
use epoll ; //io 模型
worker_connections 1024; 连接数越大并发量越大
}
理论上nginx支持的并发数为: processes* connections