成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Nginx的accept_mutex配置分析

運維 系統運維
通常多數人不會注意Nginx的accept_mutex配置,不過實際上它對系統的吞吐量有一定的影響,今天生物鐘紊亂睡不著覺,索性閑扯一下Nginx的accept_mutex配置。

通常多數人不會注意Nginx的accept_mutex配置,不過實際上它對系統的吞吐量有一定的影響,今天生物鐘紊亂睡不著覺,索性閑扯一下Nginx的accept_mutex配置。

 

讓我們看看accept_mutex的意義:當一個新連接到達時,如果激活了accept_mutex,那么多個Worker將以串行方式來處理,其中有一個Worker會被喚醒,其他的Worker繼續保持休眠狀態;如果沒有激活accept_mutex,那么所有的Worker都會被喚醒,不過只有一個Worker能獲取新連接,其它的Worker會重新進入休眠狀態,這就是「驚群問題」。

Nginx缺省激活了accept_mutex,也就是說不會有驚群問題,但真的有那么嚴重么?實際上Nginx作者Igor Sysoev曾經給過相關的解釋

 OS may wake all processes waiting on accept() and select(), this is called thundering herd problem. This is a problem if you have a lot of workers as in Apache (hundreds and more), but this insensible if you have just several workers as nginx usually has. Therefore turning accept_mutex off is as scheduling incoming connection by OS via select/kqueue/epoll/etc (but not accept()).

簡單點說:Apache動輒就會啟動成百上千的進程,如果發生驚群問題的話,影響相對較大;但是對Nginx而言,一般來說,worker_processes會設置成CPU個數,所以最多也就幾十個,即便發生驚群問題的話,影響相對也較小。

假設你養了一百只小雞,現在你有一粒糧食,那么有兩種喂食方法:

  • 你把這粒糧食直接扔到小雞中間,一百只小雞一起上來搶,最終只有一只小雞能得手,其它九十九只小雞只能鎩羽而歸。這就相當于關閉了accept_mutex。
  • 你主動抓一只小雞過來,把這粒糧食塞到它嘴里,其它九十九只小雞對此渾然不知,該睡覺睡覺。這就相當于激活了accept_mutex。

可以看到此場景下,激活accept_mutex相對更好一些,讓我們修改一下問題的場景,我不再只有一粒糧食,而是一盆糧食,怎么辦?

此時如果仍然采用主動抓小雞過來塞糧食的做法就太低效了,一盆糧食不知何年何月才能喂完,大家可以設想一下幾十只小雞排隊等著喂食時那種翹首以盼的情景。此時更好的方法是把這盆糧食直接撒到小雞中間,讓它們自己去搶,雖然這可能會造成一定程度的混亂,但是整體的效率無疑大大增強了。

Nginx缺省激活了accept_mutex,是一種保守的選擇。如果關閉了它,可能會引起一定程度的驚群問題,表現為上下文切換增多(sar -w)或者負載上升,但是如果你的網站訪問量比較大,為了系統的吞吐量,我還是建議大家關閉它。

責任編輯:黃丹 來源: 火丁筆記
相關推薦

2020-04-09 13:23:29

Nginx配置文件模板

2010-03-25 18:31:03

Nginx配置文件

2024-10-17 16:30:28

2011-08-25 13:51:48

accept中文man

2019-11-17 22:11:11

TCPSYN隊列Accept隊列

2021-05-25 09:28:34

鴻蒙HarmonyOS應用

2020-12-07 13:31:43

GoMutex開發者

2014-03-18 10:27:20

Nginx Httpc腳本

2013-12-17 09:42:53

Nginx性能分析http服務器

2010-03-30 18:56:13

Nginx配置模塊

2014-04-04 10:16:51

Nginx配置Nginx性能優化

2010-06-18 09:51:51

Linux Accep

2021-06-10 09:52:33

LinuxTCPAccept

2021-04-19 07:41:37

AcceptEmfile問題

2009-08-26 17:24:49

C# Mutex對象

2024-06-13 10:16:29

2014-03-28 14:20:04

2010-03-25 18:17:04

Nginx配置

2010-03-29 10:12:04

Nginx優化設置

2010-03-29 10:38:36

Nginx配置
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产日韩欧美激情 | 成人免费黄色片 | 亚洲精品99久久久久久 | 日韩免费一区二区 | 日本成人中文字幕 | 91av在线免费播放 | 日韩精品久久一区二区三区 | 国产亚洲精品综合一区 | 日韩高清成人 | 欧美性区 | 久久久成人一区二区免费影院 | 日韩在线免费 | 成人一区二区三区在线 | 亚洲视频在线观看一区二区三区 | 成人影| 亚洲精品久久久一区二区三区 | 国产精品视频久久久久久 | 亚洲 欧美 另类 综合 偷拍 | 日韩在线免费电影 | 国产日韩欧美精品一区二区三区 | 亚洲小说图片 | 日韩精品一区二区三区在线播放 | 影音先锋中文字幕在线观看 | 国产成人精品999在线观看 | 91文字幕巨乱亚洲香蕉 | 欧美日韩黄色一级片 | 国产男女猛烈无遮掩视频免费网站 | 成人黄色在线 | 久久99久久99精品免视看婷婷 | 精品成人| 成人视屏在线观看 | aa级毛片毛片免费观看久 | 国产成人精品一区二区 | 一区二区三区视频在线观看 | 欧美不卡视频一区发布 | 伊人国产精品 | 黄色在线观看网址 | 日韩欧美在线播放 | 中文字幕人成乱码在线观看 | 午夜ww| 精品视频一区二区在线观看 |