听老歌 发表于 2012-01-04 19:47

高性能Web服务器Nginx的配置与部署研究——(8)核心模块之事件模块


高性能Web服务器Nginx的配置与部署研究——(8)核心模块之事件模块









一、事件模块的作用是什么?




用来设置Nginx处理链接请求。




二、相关指令




1. accept_mutex

含义:设置是否使用连接互斥锁进行顺序的accept()系统调用。

语法:accept_mutex <on|off>;

缺省:on

示例:accept_mutex off;




2. accept_mutex_delay

含义:设置获得互斥锁的最少延迟时间。

语法:accpet_mutex_delay <number of millisecs>

缺省:500ms

示例:accpet_mutex_delay 1000ms;




3. debug_connection

含义:设置指定的clients产生debug日志。

语法:debug_connection ;

缺省:none

示例:debug_connection172.16.44.96;

一段较完整的事件模块代码如下:

error_log /data/nginx/log/error.log;

events {

debug_connection172.16.44.96;

}




4. multi_accept

含义:设置是否允许,Nginx在已经得到一个新连接的通知时,接收尽可能更多的连接。

语法:multi_accept <on|off>;

缺省:off

示例:multi_accept on;




5. rtsig_signo






6. rtsig_overflow_threshold




7. use

语法:use ;

注意:如果在./configure的时候指定了不止一种事件模型,那么可以设置其中一个,告诉Nginx使用哪种事件模型。默认情况下,Nginx会在./configure时找出最适合系统的事件模型。




8. worker_connections

语法:worker_connection <number>;

注意:

最大连接数的计算公式如下:

max_clients = worker_processes * worker_connections;

如果作为反向代理,因为浏览器默认会开启2个连接到server,而且Nginx还会使用fds(file descriptor)从同一个连接池建立连接到upstream后端。则最大连接数的计算公式如下:

max_clients = worker_processes * worker_connections / 4;

小鬼萌萌控 发表于 2012-01-04 19:47

谢谢分享
页: [1]
查看完整版本: 高性能Web服务器Nginx的配置与部署研究——(8)核心模块之事件模块