1. 程式人生 > >nginx修改配置後reload原理初探

nginx修改配置後reload原理初探

版權宣告:本文為博主原創文章,未經博主允許不得轉載。    https://blog.csdn.net/u012811805/article/details/76849668
前言
nginx啟動時,會啟動兩個程序: 一個是Master程序和worker程序。
改變配置後nginx做的事
1)改變了nginx配置之後,HUP signal的訊號需要傳送給主程序。
2)主程序首先會檢測新配置的語法有效性。
3)嘗試應用新的配置 
1.開啟日誌檔案,並且新分配一個socket來監聽。
2.如果1失敗,則回滾改變,還是會使用原有的配置。
3.如果1成功,則使用新的配置,新建一個執行緒。新建成功後傳送一個關閉訊息給舊的程序。要求舊執行緒優雅的關閉。
4.舊的執行緒 受到訊號後會繼續服務,當所有請求的客戶端被服務後,舊執行緒關閉。
圖解


修改配置後使用如下命令生效配置
nginx -s reload
1
檢視程序情況
從如下程序情況的改變可以知道此時程序1360是 nginx的主程序
修改前ä¿®æ¹å

修改後修改後