nginx最大并发连接数_重要参数worker_processes、worker_connections、worker_rlimit_nofile

worker_processes   number|auto

官方英文版wiki配置说明中的描述如下,个人理解为worker角色的进程个数(nginx启动后有多少个worker处理http请求。master不处理请求,而是根据相应配置文件信息管理worker进程. master进程主要负责对外揽活(即接收客户端的请求),并将活儿合理的分配给多个worker,每个worker进程主要负责干活(处理请求))。

如果nginx处理的是cpu密集型(比较耗费cpu的)的操作,建议将此值设置为cpu个数或cpu的核数。

“自动”这个参数值是从nginx 1.3.8和nginx 1.2.5 开始进行支持的,自动参数可以自动检测 cpu cores 并设置 worker_processes 参数 。

worker_connections:20000;       官方解释如下,个人认为是每一个worker进程能并发处理(发起)的最大连接数(包含所有连接数)。

max_clients

浏览器会同时开两条连接, 如果是反向代理, nginx到后端服务器的连接也要占用连接数

所以 作为静态服务器时 max_cliens = worker_processes * worker_connections / 2

nginx作为反向代理服务器的时候:  max_clients = worker_processes * worker_connections/4 

nginx作为http服务器的时候: max_clients = worker_processes * worker_connections 

worker_rlimit_nofile  655350;    可被一个工作进程打开的最大文件描述符数量

 

一片博文mark一下

https://blog.csdn.net/sole_cc/article/details/52433353

http://www.360doc.com/content/16/0723/20/16760715_577864438.shtml