1.worker_connections
功能:定义每个work_process同时开启的最大连接数,参数受os进程最大打开文件数限制。
默认值:1024
2.accept_mutex on|off;
默认值:1.11.3之前默认on,之后的版本则是默认off
说明:配置了多个workers,打开此功能,worker进程轮流,序列号的响应请求,如果关闭了它,可能会引起一定程度的[惊群问题]
对于分布式应用短连接来讲最好是打开该参数,这样避免过多的上下文切换开销
对于长连接应用最好是关闭该参数,避免过多连接负载到一个worker上导致某个进程CPU利用率过高
3.multi_accept on|off;
功能:参数值为on,一个工作进程可以同时接受所有的新连接,默认为off,nginx一个工作进程只能同时接受一个新的连接,使用kqueue连接方法,这条指令会被忽略。
4.accept_mutex_delay
当accept_mutex设置为on后就需要根据应用场景调试accept_mutex_delay参数,该参数规定所有子进程多少时间后重新抢夺accept锁。合适的参数值有助于减少worker负载不均衡问题。默认值500ms
5.use epoll;
Nginx服务器提供了多个事件驱动器模型来处理网络消息。
其支持的类型有:select、poll、kqueue、epoll、rtsing、/dev/poll以及eventport。
-
select:只能在Windows下使用,这个事件模型不建议在高负载的系统使用
-
poll