zoukankan      html  css  js  c++  java
  • 平滑重启更新(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

  • 相关阅读:
    markdownPad2 绿色破解版安装
    解决idea 控制台中文乱码
    PS CC 破解安装教程(亲测可用)
    mp4文件格式之fragment mp4
    音视频技术总结
    ffmpeg的内部Video Buffer管理和传送机制
    OMX Codec详细解析
    Gstreamer的一些基本概念与A/V同步分析
    stagefright omx小结
    OMXCodec与OMX事件处理流程
  • 原文地址:https://www.cnblogs.com/frankltf/p/8862492.html
Copyright © 2011-2022 走看看