accept_mutex_delay 指令

语 法:   accept_mutex_delay time;

默认值:   accept_mutex_delay 500ms;

上下文:   events

如果启用了 accept_mutex,则指定在另一个工作进程当前正在接受新连接的情况下,工作进程将尝试重新开始接受新连接的最长时间。

accept_mutex 表示是否打开 accept 锁,accept_mutex 是 nginx 的负载均衡锁,当某一个 worker 进程建立的连接数达到 worker_connections 配置的最大连接数的 7/8 时,会大大减小该 worker 进程试图建立新 tcp 连接的机会。

accept 锁默认是打开的。如果关闭它,那么建立 tcp 连接的耗时会更短,但是 worker 进程之间的负载会非常不平衡。

accept_mutex_delay 表示 accept 锁后到真正建立链接之间的延迟时间,默认为500ms,在使用 accept 锁后,同一时间只有一个 worker 进程能够取得 accept 锁。这个 accept 锁不是阻塞锁,如果取不到会立即返回,如果只有一个 worker 进程试图取锁而没有取到,他至少要等待 accept_mutex_delay 定义的时间才能再次取锁。

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号