一個nginx: master 進程,同時會開啟,幾個nginx: worker process
Nginx會按需同時執行多個進程:一個主進程(master)和幾個工作進程(worker),配置了快取時還會有快取載入器進程(cache loader)和快取管理器進程(cache manager)等。 (建議學習:nginx教程)
所有進程均是僅含有一個線程,並主要透過「共享記憶體」的機制實現進程間通訊。主程序以root使用者身分執行,而worker、cache loader和cache manager均應以非特權使用者身分執行。
透過ps –ef | grep nginx可以看到共有三個進程,一個master進程,兩個worker進程。
nginx是多進程結構,多進程結構設計是為了保證nginx的高可用高可靠,包含:
主程序(Master Process)
主要完成以下工作:
讀取並驗正配置資訊;
建立、綁定及關閉套接字;
啟動、終止及維護worker程序的數量;
無須中止服務而重新配置工作特性;
控制非中斷式程式升級,啟用新的二進位程式並在需要時回滾至舊版本;
重新開啟日誌文件,實作日誌滾動;
編譯嵌入式perl腳本;
工作流程(Worker Process)
接收、傳入並處理來自客戶端的連線;
提供反向代理程式及篩選功能;
nginx任何能完成的其它任務;
快取索引重建及進程管理(Cache Loader & Cache Manager)
Cache模組,主要由快取索引重建(Cache Loader )和快取索引管理(Cache Manager)兩類進程完成工作。快取索引重建進程是在Nginx服務啟動一段時間之後(預設是1分鐘)由主進程生成,在快取元資料重建完成後就自動退出;快取索引管理進程一般存在於主進程的整個生命週期,負責對快取索引進行管理。
cache loader進程主要完成的任務包括:
檢查快取儲存中的快取物件;
使用快取元資料建立記憶體資料庫;
##cache manager進程的主要任務:快取的失效及過期檢驗;以上是nginx的行程名稱是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!