nginx的worker_processes該怎麼設定
淡淡烟草味
淡淡烟草味 2017-05-16 17:29:54
0
3
865

我知道worker_processes是表示工作進程的數量,但是這個值該怎麼設定呢?理論上來說依照cpu核心數的倍數來設定是沒錯的,但到底是幾倍呢?有的人說是有多少核心就設定多少個進程,還有種說法是設成cpu核心數的兩倍。

但是我想這裡應該有一個原則,要不然nginx為什麼不自己在程式中判斷下核心數,然後fork對應的進程呢?肯定這個數值是需要依據某種經驗來判斷的,有人能分享下這方面的經驗嗎?

淡淡烟草味
淡淡烟草味

全部回覆(3)
曾经蜡笔没有小新

一般來說,設定成CPU核的數量即可,另外不要忘了設定worker_cpu_affinity,這個配置用於將worker process與指定cpu核綁定,降低由於多CPU核切換造成的寄存器等現場重建帶來的性能損耗。關於這個配置項目可以參考http://www.nginx.org/en/docs/ngx_core...。

另外,淘寶維護的nginx分支Tengine可以使用auto指令自動設定worker_processes和worker_cpu_affinity。 Tengine已經開源:http://tengine.taobao.org/

某草草

我個人是機器只跑nginx應用的話,設定總核心數-1 也許是習慣,不過一直工作的很好~

漂亮男人

我覺得auto就可以了。

worker_processes auto;
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板