久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

聊聊nginx平滑重啟和FPM平滑重啟

本篇文章帶大家了解一下平滑重啟,詳細介紹一下nginx平滑重啟和FPM平滑重啟,希望能夠給大家提供幫助!

平滑重啟

GR是Graceful Restart(平滑重啟)的簡稱,是一種在協議重啟時保證轉發業務不中斷的機制。
GR機制的核心在于:當某設備進行協議重啟時,能夠通知其周邊設備在一定時間內將到該設備的鄰居關系和路由保持穩定。在協議重啟完畢后,周邊設備協助其進行信息(包括支持GR的路由/MPLS相關協議所維護的各種拓撲、路由和會話信息)同步,在盡量短的時間內使該設備恢復到重啟前的狀態。在整個協議重啟過程中不會產生路由振蕩,報文轉發路徑也沒有任何改變,整個系統可以不間斷地轉發數據。這個過程即稱為平滑重啟。

nginx平滑重啟

nginx進程分為master主進程和worker工作進程,nginx的平滑重啟通過信號HUB控制。

聊聊nginx平滑重啟和FPM平滑重啟

注:在POSIX兼容的平臺上,SIGUSR1和SIGUSR2是發送給一個進程的信號,它表示了用戶定義的情況。

為了詳細分析nginx的平滑重啟過程,我們持續監控nginx進程變化。
發送HUP信號

kill -HUP `cat /home/git/nginx/logs/nginx.pid`

聊聊nginx平滑重啟和FPM平滑重啟

聊聊nginx平滑重啟和FPM平滑重啟

聊聊nginx平滑重啟和FPM平滑重啟

通過觀察,可以分析出大致的平滑重啟過程為:
1. master使用新配置 fork出n-1個worker及新master
2. 新worker處理新情求,舊worker執行完退出
3. master重新加載配置,期間使用新master接管服務
4. master加載配置完畢,新master切換為worker工作模式
平滑重啟完,master進程號并不會發生變化。

nginx平滑升級

HUP僅用于平滑重啟,加載配置等,如果要平滑升級nginx版本,重新加載編譯的二進制文件,需要借助于USR2信號。

1. 發送USR2信號

kill -USR2 `cat /home/git/nginx/logs/nginx.pid`

聊聊nginx平滑重啟和FPM平滑重啟

聊聊nginx平滑重啟和FPM平滑重啟

觀察到nginx進程,fork出新master及worker,此時nginx.pid內容已經發生變化,并且在logs目錄下生成了nginx.pid.oldbin文件,記錄舊master pid.

2. 向舊master發送WINCH信號,nginx woker會優雅地停止服務,即:停止接收新的請求,但是不會終止已經在處理的請求。一段時間后,舊nginx的所有worker進程全部退出,只剩下master進程,而用戶請求全部都由新的nginx進程處理。

kill -WINCH `cat /home/git/nginx/logs/nginx.pid.oldbin`

聊聊nginx平滑重啟和FPM平滑重啟

3、向舊master發送QUIT信號,舊nginx進程完全退出,至此平滑升級完成。

kill -QUIT `cat /home/git/nginx/logs/nginx.pid.oldbin`

聊聊nginx平滑重啟和FPM平滑重啟

FPM平滑重啟

FPM(FastCGI 進程管理器)用于替換 PHP FastCGI 的大部分附加功能,php5.3.3之后已經集成FPM,在./configure的時候帶 –enable-fpm參數即可開啟PHP-FPM。

FPM的平滑重啟需要通過USR2信號控制,不過與nginx的平滑重啟過程有較大的不同。

kill -USR2 `cat /home/git/php/var/run/php-fpm.pid`

聊聊nginx平滑重啟和FPM平滑重啟

通過持續觀察fpm進程可以看到,FPM平滑重啟,需要等子進程完全退出后,才會啟動新的master及子進程,隨后舊master退出。
使用strace進一步分析

聊聊nginx平滑重啟和FPM平滑重啟

發現master通知所有子進程退出,包含正在處理請求的子進程。

為了進一步驗證這個結論,編寫一個服務端sleep腳本

<?php exec("sleep 5"); echo 'done';

用瀏覽器請求這個地址,并在此期間平滑重啟fpm,請求直接502了。
nginx錯誤日志:

[error] 29841#0: *1646 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 127.0.0.1, server: localhost, request: "GET /test.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9001", host: "localhost"

php bug#60961,也有對fpm無法優雅的實現平滑重啟的說明。
難道FPM這么low?答案當時是no,實際上通過 process_control_timeout 參數可以實現我們的目標。

process_control_timeout

設置子進程接受主進程復用信號的超時時間。可用單位:s(秒),m(分),h(小時)或者 d(天)。默認單位:s(秒)。默認值:0(關閉)。

原則上,php-fpm會選擇空閑的fastcgi進程去處理請求,在處理之前,php-fpm會給fastcgi發送信號,用來讓fastcgi進程準備好接受請求處理。但是fastcgi進程并不總是能夠處理請求,也就是不能總是響應該信號(比如出現假死的情況),這時候就需要設定php-fpm留給fastcgi進程響應信號的時間,如果超時了,php-fpm會想其他辦法(例如選擇其他fastcgi進程),這個就是process_control_timeout參數的作用。

這個參數缺省是 0,也就是不生效,修改為10,重新驗證,502已經不會再出現。

結論:缺省情況下,PHP-FPM 無法保證平滑的執行 reload 操作,必須設置一個合理的 process_control_timeout 才行,同時需要注意的是其值不能設置的過大,否則系統可能出現嚴重的請求堵塞問題。

推薦學習:《PHP視頻教程》

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
日韩午夜在线| 亚洲韩日在线| 激情丁香综合| 国产精品s色| 日韩午夜av| 欧美日韩精品一本二本三本| 日韩午夜精品| 精品国产a一区二区三区v免费| 天堂8中文在线最新版在线| japanese国产精品| 青草av.久久免费一区| 亚洲精品国产嫩草在线观看 | 在线亚洲观看| 日韩av网站在线观看| 欧美日韩一区二区综合| 玖玖玖国产精品| 视频一区在线视频| 美女av在线免费看| 久久国内精品视频| 先锋影音久久久| 日韩视频网站在线观看| 日韩成人精品一区二区三区| 91精品国产成人观看| 久久精品色播| 欧美天堂在线| 狠狠爱成人网| 久久久一二三| 国产在线观看91一区二区三区 | 日韩精品久久久久久久软件91| 鲁鲁在线中文| 欧美日韩1区| 亚洲欧美成人综合| 日本中文字幕不卡| 国产精品久久久久久久免费软件| 色在线视频观看| 红桃视频国产精品| 一区二区亚洲视频| 日本免费久久| 精品一区av| 亚洲精品国产日韩| 日韩在线一二三区| 国产探花一区| 国产亚洲人成a在线v网站| 在线免费观看亚洲| 亚洲女同一区| 日本视频中文字幕一区二区三区| 97久久亚洲| 久久一区国产| 日韩精品免费一区二区在线观看| 久久不见久久见中文字幕免费 | 丝袜美腿亚洲色图| 欧美午夜精彩| 国产欧美自拍一区| 美腿丝袜亚洲一区| 麻豆精品99| 精品国产不卡一区二区| 少妇精品导航| 视频一区中文字幕精品| 国产精品三p一区二区| 精品五月天堂| 久久人人99| 久草免费在线视频| 欧美成人一二区| 久久精品电影| 石原莉奈一区二区三区在线观看| 欧美午夜不卡影院在线观看完整版免费| 亚洲日本久久| 日韩二区在线观看| 精品国产黄a∨片高清在线| 日韩欧美少妇| 五月激激激综合网色播| 97精品国产| 国产精品男女| 亚洲精品一区二区在线看| 久久精品欧洲| 久久xxxx精品视频| 成人久久久久| 亚洲主播在线| 国产精品亚洲一区二区在线观看| 韩日一区二区| 都市激情国产精品| 成人国产精品久久| 三上悠亚国产精品一区二区三区| 久久精品av麻豆的观看方式| 国产精品片aa在线观看| 色欧美自拍视频| 国产精品一区二区av日韩在线| 欧美.日韩.国产.一区.二区 | 国产一区一一区高清不卡| 亚洲精品九九| 亚洲深夜影院| 亚洲成人国产| 一区二区三区视频免费观看| 国产精品传媒麻豆hd| 亚洲精品观看| 日韩精品2区| 日韩在线观看中文字幕| 精品日韩一区| 欧美91在线|欧美| 国产精品成人3p一区二区三区| 欧美日韩伊人| 欧美激情日韩| 国产夫妻在线| 欧美午夜精彩| 日韩在线卡一卡二| 日韩欧美中文在线观看| 国产日韩一区二区三免费高清| 国产亚洲精品美女久久| 青草av.久久免费一区| 国产在线不卡一区二区三区| 国产欧美日韩精品一区二区免费 | 日韩亚洲精品在线观看| 亚洲欧美日韩一区在线观看| 久久国产精品成人免费观看的软件| 日本不卡一二三区黄网| 中文字幕高清在线播放| 国产劲爆久久| 日本强好片久久久久久aaa| 久久中文字幕导航| 亚洲黄页一区| 国产精品腿扒开做爽爽爽挤奶网站| 国产图片一区| 综合一区av| 成人国产精品久久| 91成人精品在线| 蜜桃av一区二区三区电影| 国产中文在线播放| 精品久久97| 高清一区二区| 精品少妇av| 国产毛片精品| 亚洲色图综合| 欧美欧美黄在线二区| 精品一区二区三区亚洲| 日韩一区精品字幕| 国产不卡一区| 日韩影院精彩在线| 香蕉久久一区| 久久久国产亚洲精品| 日韩成人午夜精品| 欧美精品一区二区久久| 久久麻豆视频| 国产三级精品三级在线观看国产| 亚洲精品国产嫩草在线观看 | 日韩制服丝袜先锋影音| 国产精品1区在线| 丝袜诱惑制服诱惑色一区在线观看| 亚洲色图网站| 精品日本视频| 亚洲深夜视频| 午夜一级在线看亚洲| 午夜欧美视频| 四虎影视精品| 欧美久久精品一级c片| 亚洲综合欧美| 日韩手机在线| 精品一区二区三区在线观看视频| 尤物在线精品| 日韩高清不卡| 欧洲一级精品| 日韩免费福利视频| 麻豆视频在线观看免费网站黄| 亚洲视频二区| 日韩不卡在线观看日韩不卡视频| 日日夜夜免费精品视频| 欧美日韩激情| 综合一区在线| 国产精品v日韩精品v欧美精品网站| 国产欧美久久一区二区三区| 久久超级碰碰| 亚洲性视频h| 日韩三级精品| 福利一区和二区| 亚洲女同中文字幕| 欧美专区一区| 色婷婷色综合| 不卡在线一区| 欧美日韩第一| 日韩午夜免费| а√在线中文在线新版| 亚洲精品成人一区| 精品日韩视频| 欧美日本不卡| 日韩在线观看一区二区| 日韩av免费大片| 国产一区福利| 欧美日韩国产亚洲一区| 丝袜亚洲精品中文字幕一区| 亚洲激情国产| 三级亚洲高清视频| 国产精品99一区二区| 黄色精品网站| 亚洲一级少妇| 日韩不卡一区二区三区| 欧美精品黄色| 麻豆国产精品777777在线| 老司机精品久久| 久草免费在线视频| 久久精品色播| 日本国产亚洲|