Nginx服務的控制方式
阿新 • • 發佈:2018-10-14
配置信息 平臺 fig 機制 關閉 onf quit dbi 顯示錯誤 Nginx服務器的啟停控制
通過信號機制來控制
通過給Nginx服務的主進程和工作進程發送信號控制服務的啟停。
Nginx服務在運行時,會保持一個主進程和一個或多個worker process工作進程。
我們通過給Nginx服務的主進程發送信號就可以控制服務的啟停了。
NGINX控制信號:
TERM,INT 快速關閉
QUIT 從容關閉
HUP 用新的配置開始新的工作進程,從容關閉舊的工作進程
USR1 重新打開日誌文件
USR2 平滑升級可執行程序
WINCH 從容關閉工作進程
使用語法:kill -信號 nginx主進程號
通過命令控制:
nginx -s [ stop|quit|reopen|reload] stop:強制停止NGINX,不管工作進程當前是否在處理用戶請求,都會立即退出 quit:優雅地退出NGINX,工作進程會將當前正在處理的請求處理完畢後,再退出 reload:重載配置信息 reopen;重新打開日誌文件 nginx -t 不運行,僅僅測試配置文件 nginx -c /path/to/config 為nginx指定一個配置文件,來代替缺省的 nginx -v 查看NGINX版本 nginx -V 查看nginx編譯參數
Nginx服務的啟動:
在linux平臺下,執行Nginx安裝目錄下sbin目錄下的nginx命令即可啟動Nginx服務。
Nginx服務平滑重啟:
平滑重啟:
Nginx服務進程接收到信號後,首先讀取新的Nginx配置文件,如果配置語法正確,則啟動新的Nginx服務,然後平緩關閉舊的服務進程;如果新的Nginx配置有問題,將顯示錯誤,並仍然使用舊的Nginx進程提供服務。
實現平滑重啟的命令:
nginx -g HUP [-c 新配置文件路徑]
#HUP: 平滑重啟信號
#-c 新配置文件路徑 :指定新配置文件路徑
Nginx服務器的平滑升級
Nginx可實現平滑升級,在進行新版本升級過程中,還可以提供Nginx服務。 平滑升級的過程: Nginx服務接收到USER2信號後,首先將舊的nginx.pid文件添加後綴.oldbin,變為nginx.pid.oldbin文件 然後執行新版Nginx服務的二進制文件啟動服務。如果新Nginx服務啟動成功,此時系統中將有新舊倆個Nginx服務提供Web服務。之後,向舊的Nginx服務進程發送WINCH信號,停止舊的Nginx服務,並刪除nginx.pid.oldbin文件。 為實現平滑升級,新舊Nginx服務應安裝路徑應保持一致,如無法保持新舊nginx安裝路徑一致,可使用一下命令將舊nginx的安裝路徑改為新nginx的安裝路徑: nginx -p 新安裝路徑 平滑升級命令: Nginx -g USR2
本文章整理自馬哥linux和Nginx高性能web服務器詳解,版權歸原作者所有
Nginx服務的控制方式