為了避免驚群問題直接只讓一個worker進程來監聽,通過accept_mutex來控制(現在的版本好像默認關閉了有新的處理方式了,姑且當我說的是開啟accept_mutex的舊版本吧),但是這樣和直接主進程來處理有什么區別嗎?怎么就利用多核優勢了呢?我能想到的就是一個worker崩了不會都崩了而已,只是增強一點魯棒性,但是從頭到尾都只有一個worker在處理所有的監聽呀(上次拿到鎖的會交出所有的fd),在我看來,就是增強了健壯性而已,網上很多人說提高了并發,利用了多核優勢,我該如何理解呢?
nginx中永遠只有一個worker進程來處理epoll中的listen fd,為什么?
茅侃侃
2018-07-06 10:13:55