平滑重啟更新(GR機制)

平滑重啟更新(GR機制)

什么是平滑啟動機制
  • 是一種在協議重啟時保證轉發業務不中斷的機制。
什么時候用到平滑重啟
  • 平滑重啟一般應用于業務更新或者版本發布過程中,能夠避免因為代碼發布重啟服務導致的暫時性服務不可用的影響。
ngnix 平滑重啟和平滑更新
  • Nginx的進程分為master主進程和work工作進程,master進程主要管理事件信號接受和分發,所有的請求處理都由work進程處理并返回結 果,Nginx的平滑重啟或重載配置文件等升級,首先是向master發送重啟或重載配置文件信號,然后master告訴所有的work進程不再接受新的 請求,然后master另起新的work進程,最后告訴舊的work進程可以光榮退出了。
  • 平滑更新 :在upgrade過程中,還涉及到3個信號(USR2、WINCH和QUIT)。
    首先發送USR2信號給原master,原master進程會額外啟動一個master進程和若干worker進程,新舊worker進程同時提供對外服務。
    第二步發送WINCH信號,原worker進程停止服務并退出。
    最后發送QUIT信號給原master使之退出,只保留新的master和worker。
php-fpm 平滑重啟
  • php-fpm的reload平滑重啟是指:假設128個php-cgi進程中有50個進程正在處理PHP程序,而剩余的78個進程處于閑置狀態,php-fpm接到平滑重啟信號后,會kill掉78個閑置進程,然后新啟動128個進程,新請求交給新啟動的進程來處理,而那50個進程,只有等到它們處理完自己當前正在執行的PHP程序后,才會被干掉。
  • php-fpm master 進程可以理解以下的信號:
    • INT, TERM 立刻終止
    • QUIT 平滑終止
    • USR1 重新打開日志文件
    • USR2 平滑重載所有worker進程并重新載入配置和二進制模塊
  • 關閉php-fpm:
    • kill -INT cat /usr/local/php/var/run/php-fpm.pid
  • 平滑重啟php-fpm:
    • kill -USR2 cat /usr/local/php/var/run/php-fpm.pid
  • 注意php-fpm.pid文件需要到到php-fpm.conf配置文件里面打開:
    [global] ; Pid file ; Note: the default prefix is /usr/local/php/var ; Default Value: none pid = run/php-fpm.pid //即,將pid(;pid = run/php-fpm.pid)前的;去掉。
    參考:https://www.cnblogs.com/justdoyou/p/7152334.html
    http://ask.apelearn.com/question/11387

轉載于:https://www.cnblogs.com/frankltf/p/8862492.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/251932.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/251932.shtml
英文地址,請注明出處:http://en.pswp.cn/news/251932.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

正斜杠( / )和反斜杠( \ )的區別

反斜杠“\”是電腦出現了之后為了表示程序設計里的特殊含義才發明的專用標點。所以除了程序設計領域外,任何地方都不應該使用反斜杠。 如何區分正反斜杠 英語:"/" 英文是forward slash, “\" 是backward slash形象些比喻的話,…

MMDetectionV2 + Colab

MMDetectionV2 Colab 超詳細教程及踩坑實錄 文章目錄 前言一、環境配置二、準備自己的數據集 Aug.14更新三:修改config文件 3.1 文件結構3.2 (本地)修改config文件 3.2.1 (本地)構造自己模型的權重文件3.2.2 &#x…

剛剛,OpenStack 第 19 個版本來了,附28項特性詳細解讀!

剛剛,OpenStack 第 19 個版本來了,附28項特性詳細解讀! OpenStack Stein版本引入了新的多云編排功能,以及幫助實現邊緣計算用例的增強功能。 OpenStack由一系列相互關聯的項目組成,這些項目可以以不同的組合方式組合在…

SQL作業:綜合練習(二)的返評

一:作業題目:綜合練習(二) 二:題目要求: 1、創建數據庫CPXS,保存于E盤根目錄下以自己學號姓第一個字母(阿拉伯數字大寫字母)方式創建的文件夾中,初始大小5MB&…

caffe cifar10試跑問題總結

caffe cifar10試跑問題總結 [daniel] 寫了一個腳本可以直接用來添加環境變量:/Users/songdanzju/daniel_script/export_for_ananconda.sh#! /bin/bash export PATH~/ananconda/bin:$PATH export DYLD_FALLBACK_LIBRARY_PATH~/anaconda:~/anaconda/lib:/usr/local/l…

paddlepaddle-VisualDL2.0對項目進行可視化調參

如果需要更好的閱讀體驗,可以在ai studio上fork該項目:使用VisualDL2.0對項目進行可視化調參 調參是深度學習必須要做的事情。數據和模型處理好后,需要進行模型訓練,這個時候就需要進行調參了。一種好的參數配置,可以…

第一、二次實訓作業

1.編寫程序: 聲明一個整型變量a,并賦初值5,在程序中判斷a是奇數還是偶數,然后輸出判斷的結果。 package 判斷奇偶; public class liux { public static void main(String[] args){ int x5; if(x%20){ System.out.println("這…

推薦一款作圖工具

以前看到別人的時序圖覺得好好看,然后就想這都是用的什么工具畫出來的呢?然后看到了一個師兄用的這個工具,真的挺好用的。這是是試用版的界面。類圖我覺著看起來效果都挺不錯的。轉載于:https://www.cnblogs.com/tuhooo/p/8874410.html

【codeforces】【比賽題解】#849 CF Round #431 (Div.2)

cf的比賽越來越有難度了……至少我做起來是這樣。 先看看題目吧:點我。 這次比賽是北京時間21:35開始的,算是比較良心。 【A】奇數與結束 "奇數從哪里開始,又在哪里結束?夢想從何處起航,它們又是否會破滅呢&#…

PaddleDetection支持的數據格式

PaddleDetection支持的數據格式 目前#PaddleDetection支持43種數據格式:coco voc widerface。在這里我們主要說明一下如何使用自定義COCO進行目標檢測、實例分割;如何使用自定義VOC數據集進行目標檢測。在PaddleDetection新的版本中,我們將數…

[dts]Device Tree機制【轉】

轉自:https://www.cnblogs.com/aaronLinux/p/5496559.html 轉自:http://blog.csdn.net/machiner1/article/details/47805069 ------------------Based on linux 3.10.24 source code 參考/documentation/devicetree/Booting-without-of.txt文檔 目錄 1.…

AntiSamy測試

AntiSamy為owasp針對xss提供的處理庫,可以配置xml策略來決定過濾的內容,比如標簽、屬性、css等,自定義策略給開發人員使用成本比較高,AntiSamy也提供了幾個內置的策略,其安全級別也不同,過濾的內容也不一樣…

1625 數字金字塔

1625 數字金字塔 鏈接:http://codevs.cn/problem/1625/ USACO 時間限制: 1 s空間限制: 128000 KB題目描述 Description考慮在下面被顯示的數字金字塔. 寫一個程序來計算從最高點開始在底部任意處結束的路徑經過數字的和的最大. 每一步可以走到下方的點也可以到達右…

ubuntu下的能安裝的百度網盤的資源最新網址

Index of /deepin/pool/non-free/d/deepin.com.baidu.pan/

C# 匿名委托、匿名方法、匿名對象、Lambda表達式

C# 匿名委托、匿名方法、匿名對象、Lambda表達式 原文:C# 匿名委托、匿名方法、匿名對象、Lambda表達式一、匿名類型可通過使用 new 運算符和對象初始值創建匿名類型。示例:var v new { Name "Micro", Message "Hello" };var v new[] { …

【9018:1956】線段樹1

問題 D: 【模板】線段樹1 時間限制: 1 Sec 內存限制: 512 MB提交: 80 解決: 40[提交][狀態][討論版]題目描述 給定一個無序數列,有四種操作: 1.令數列中的某個數加上某個數 2.求一個區間的和 3.查詢一段區間內的最大值; 4.查詢一段區間內的…

c++調用函數的dll

在工程項目中,為了不暴露源代碼和避免嚴重耦合,所以將代碼封裝成 .dll二進制文件,以供項目調用。 這幾天,也是在看這些封裝dll,并使用Java中的JNA調用c的dll鏈接庫中的函數,做個筆記! 1、創建…

SoJpt Boot 2.2-3.8 發布,Spring Boot 使用 Jfinal 特性極速開發

開發四年只會寫業務代碼,分布式高并發都不會還做程序員? 在Spring Boot框架下使用Jfinal特性極速開發,可以在Spring Boot中向使用Jfinal一樣使用Enjoy、Aop、Controller等一系列方法(如: getFile(), renderFile....),以及ActiveRecord SoJpt Boot&…

組合數學--約瑟夫環問題 Josephus

約瑟夫斯問題(有時也稱為約瑟夫斯置換),是一個出現在計算機科學和數學中的問題。在計算機編程的算法中,類似問題又稱為約瑟夫環。 有n個囚犯站成一個圓圈,準備處決。首先從一個人開始,越過k-2個人&#xff…

3軸機器人各關節運動學建立,python編程,非常容易理解

分類:機器人學 一、問題描述 如右圖所示的三自由度機械臂,關節1和關節2相互垂直,關節2和關節3相互平行。如圖所示,所有關節均處于初始狀態。 要求: (1) 定義并標注出各關節的正方向; (2) 定義機器人基坐標系&#x…