nginx啓動流程
(1)根據命令行得到配置文件路徑
(2)如果處於升級中則監聽環境變量裏傳遞的監聽句柄
(3)請用所有核心模塊的create_conf方法生成存放配置項的結構體
(4)針對所有的核心模塊解析nginx.conf配置文件
(5)調用所有核心模塊的init_conf方法
(6)創建目錄,打開文件,初始化共享內存等進程間的通信方式
(7)打開有Nginx模塊從配置文件中讀取到的監聽端口
(8)調用所有模塊的init_module方法
(9)以master多進程方式運行Nginx(進入master)【如果以單進程方式運行Nginx,則進入single模式,調用所有模塊的init_process方法(一般不會)】
以下三個步驟多進程併發執行
(10)master進程
(11)啓動worker進程 ——> 調用所有模塊的init_process方法
(12)啓動Cache manager進程 ——> 啓動cache loader子進程 ——> 關閉父進程啓動時監聽端口