zoukankan      html  css  js  c++  java
  • 【个人笔记】跟着官方文档学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结尾的文件是什么意思

  • 相关阅读:
    在 Mac 上使用 PICT 进行 Pairwise 测试
    组合测试术语:Pairwise/All-Pairs、OATS(Orthogonal Array Testing Strategy)
    小白懂算法之二分查找
    小白也能看懂的JVM内存区域
    小白也能看懂的JDK1.8前_HashMap的扩容机制原理
    小白也能看懂的ArrayList的扩容机制
    activenq整合spring之队列消费者
    activemq整合spring之队列生产者
    ActiveMQ之Broker
    ActiveMQ_JMS签收
  • 原文地址:https://www.cnblogs.com/haon/p/10962160.html
Copyright © 2011-2022 走看看