Syntax: accept_mutex [ on | off ]
Default: on
nginx 使用连接互斥锁进行顺序的accept()系统调用.
Syntax: accept_mutex_delay Nms;
Default: 500ms
如果一个进程没有互斥锁,它将延迟至少多长时间。默认情况下,延迟是500ms 。
Syntax: debug_connection [ip | CIDR]
Default: none
该指令可以指定用于打印调试日志的ip
例如
error_log /var/log/nginx/errors; events { debug_connection 192.168.1.1; }
Syntax: devpoll_changes
这些参数指定了按照规定方式传递到或者来自内核的事件数,默认devpoll的值为32,其余为512。
Syntax: multi_accept [ on | off ]
Default: off
multi_accept
Syntax: rtsig_signo
Syntax: rtsig_overflow_*
这三个指令都与处理 rtsig队列溢出有关,当 rtsig队列溢出时,nginx清空队列,并在poll()和rtsig之间进行切换,poll()将未被处理的事件连续处理完,同时,为了防止产生新的溢出,rtsig会周期性的减少队列元素,当溢出被处理完成,会再次切换回rtsig
rtsig_overflow_events 指定了poll监听数量,默认是16
rtsig_overflow_test 指定了poll处理多少数量的事件后, rtsig去减少队列元素,默认为32
rtsig_overflow_threshold 此选项只在linux 2.4有效,该选项指定队列被填满几分之几时再减少队列元素,默认为1/10。
Syntax: use [ kqueue | rtsig | epoll | /dev/poll | select | poll | eventport ]
Default:
如果在./configure
的时候指定了不止一种事件模型,那么可以设置其中一个,以便告诉nginx使用哪种事件模型。默认情况下nginx会在./configure
时找出最适合系统的事件模型。
nginx的事件模型有如下几种
--with-select_module
和--without-select_module
来启用或禁用这个模块。--with-poll_module
和--without-poll_module
来启用或禁用这个模块。/proc/sys/kernel/rtsig-max
来增加队列的大小。可是从Linux内核版本2.6.6-mm2开始,
这个参数就不再使用了,并且对于每个进程有一个独立的信号队列,这个队列的大小可以用 RLIMIT_SIGPENDING 参数调节。当这个队列过于拥塞,nginx就放弃它并且开始使用poll
方法来处理连接直到恢复正常。
Syntax: worker_connections number
每个进程的最大连接数
通过worker_connections和worker_proceses可以计算出最大并发数,即最大并发数=work_connections
x work_process
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/aspnet_lyc/article/details/47323915