nginx的master和worker程序之間的關系,就像是坐台的“***”與“老鸨”之間的關系。
假如說一個妓院有多名***,而管理每個***的老鸨隻有一個,其中老鸨負責對外招攬業務,而***負責幹活(處理業務),如果一個***接待不完這些客人,老鸨會把随後的客人交給其他的***去接待。
在這裡,老鸨就屬于master程序,用戶端所有的請求都是由master來接收,***呢,就相當于woker程序,(真正處理用戶端請求的是下面這些woker程序)。
那麼在生産環境下要如何設定woker程序的數量呢?
在有多個cpu的情況下,可以設定多個worker,woker程序的數量可以設定到和cpu的核數一樣多(這句話是nginx的原作者說的),如果在單個cpu上起了多個worker程序,那麼,作業系統會在多個woker之間進行排程,這種情況會降低系統性能,如果隻有一個cpu,那麼隻啟動一個woker程序就可以了。
本文轉自蘇浩智 51CTO部落格,原文連結:http://blog.51cto.com/suhaozhi/1717715,如需轉載請自行聯系原作者