nginx 并发数问题思考:worker_connections,worker_processes与 max clients-运维者说:从菜鸟到老鸟-51CTO博客 https://blog.51cto.com/liuqunying/1420556
nginx 并发数问题思考:worker_connections,worker_processes与 max clients
Core functionality https://nginx.org/en/docs/ngx_core_module.html#worker_connections
Core functionality https://nginx.org/en/docs/ngx_core_module.html#worker_connections
Syntax: | worker_connections |
---|---|
Default: |
worker_connections 512; |
Context: | events |
Sets the maximum number of simultaneous connections that can be opened by a worker process.
It should be kept in mind that this number includes all connections (e.g. connections with proxied servers, among others), not only connections with clients. Another consideration is that the actual number of simultaneous connections cannot exceed the current limit on the maximum number of open files, which can be changed by worker_rlimit_nofile.
nginx/ngx_event.c at master · nginx/nginx https://github.com/nginx/nginx/blob/master/src/event/ngx_event.c
if (cycle->connection_n < cycle->listening.nelts + 1) { | |
/* | |
* there should be at least one connection for each listening | |
* socket, plus an additional connection for channel | |
*/ | |
ngx_log_error(NGX_LOG_EMERG, cycle->log, 0, | |
"%ui worker_connections are not enough " | |
"for %ui listening sockets", | |
cycle->connection_n, cycle->listening.nelts); | |
return NGX_CONF_ERROR; | |
} |
if (cycle->connection_n < cycle->listening.nelts + 1) { | |
/* | |
* there should be at least one connection for each listening | |
* socket, plus an additional connection for channel | |
*/ | |
ngx_log_error(NGX_LOG_EMERG, cycle->log, 0, | |
"%ui worker_connections are not enough " | |
"for %ui listening sockets", | |
cycle->connection_n, cycle->listening.nelts); | |
return NGX_CONF_ERROR; | |
} |