• 【个人笔记】跟着官方文档学nginx——Controlling nginx


    Controlling nginx,这篇文档主要讲如何细化控制nginx进程,并用配置更新、日志轮换、nginx更新二进制文件三个例子说明。

    开始

    前言

    nginx 能够用进程命令控制,进程的ID位于logs/nginx.pid。

    主进程支持以下命令

    TERM, INT 快速关闭

    QUIT 正常关闭

    HUP 改变配置,关闭旧工作线程,开启新的(keeping up with a changed time zone这句没看懂)

    USR1 重写log文件

    USR2 升级二进制文件,/sbin/nginx

    WINCH 关闭工作进程

    工作进程支持以下命令

    TERM,INT 同上

    QUIT 同上

    USR1 同上

    WINCH 用于debug,但不知道怎么用

    这里我

    一、配置更新

    用HUB命令,会使主进程重读conf配置文件,并试着使用新配置,成功,则重写log文件,并关闭(正常关闭)旧工作线程,开启新的,失败则回滚至旧配置,不开启新进程。

    二、轮换日志

    首先将日志改名,USR1发送后,主进程重新打开已经被打开的日志并分配存活的工作进程,主进程关闭所有文件后通知工作进程重重新打开文件,工作进程新建文件,关闭旧文件。

    这个主、工作进程,反复打开关闭文件我太懂,日志是主进程管理的么?USR1之后分给工作进程处理了?

    三、更新二进制文件

    更新之前先备份,替换后执行USR2, 会出现新的主进程和工作进程,然后,对旧主的执行WINCH,则保留旧主,正常关闭旧工作进程,平滑过渡了请求,注意!此时旧主仍在监听sockets,如果需要重新启用它,只需做下面两个操作

    对old master发送HUP消息,再QUIT掉new master

    TERM关闭new master,old master会自动回来

    如果不需要重新启用old master,且更新成功,只需要QUIT掉old master

    如果重新启动了,关闭new master了

    If the new master process exits then the old master process discards the .oldbin suffix from the file name with the process ID.

    这句我看不懂,抛弃带有pid的文件名以.oldbin结尾的文件是什么意思

  • 相关阅读:
    团队项目-需求分析
    设计模式第二次作业
    设计模式第一次作业
    高级软件工程团队作业(选题报告)
    高级软件工程团队结对作业(学生部门智能匹配)
    高级软件工程团队第一次作业
    高级软件工程结对作业
    高级软件工程第二次作业
    高级软件工程第一次作业
    POJ 2752 Seek the Name, Seek the Fame next数组理解加深
  • 原文地址:https://www.cnblogs.com/haon/p/10962160.html
Copyright © 2020-2023  润新知