gpt4 book ai didi

configuration - 有没有办法动态配置nginx(或其他快速反向代理)?

转载 作者:行者123 更新时间:2023-12-03 12:24:27 25 4
gpt4 key购买 nike

假设我们有几个相同的节点,它们是某个 n 层服务的应用服务器。假设我们使用 Apache ZooKeeper 来保存分布式应用程序的所有配置。此外,我们在此应用程序前面有一个 nginx 作为负载平衡器和反向代理。

因此,假设我们执行一个命令,该命令仅更改节点 1 上的数据,并且在一段时间内节点 2 与节点 1 不同。我们希望代理将所有特殊请求(需要特定数据)重定向到 node1,直到所有信息都迁移到 node2 并且 node2 具有与 node1 相同的数据。

有没有办法让 nginx(或其他代理)从 Apache ZooKeeper 读取其配置?或者更广泛:有什么方法可以有效地动态切换代理配置?当然,它应该在没有(或最少)整个系统停机的情况下完成 - 所以重新启动 nginx 不是选项。

最佳答案

Nginx 有两种更改配置的方法:

  • HUP给主进程的信号导致“重新加载”。 Nginx 启动了一堆新的 worker,让旧的 worker 优雅地关闭,即他们完成现有的请求。有服务中断。这种更改配置的方法非常轻量和快速,但几乎没有限制:您不能更改缓存区域或重新编译 Perl 脚本。
  • USR2信号,然后 WINCH然后 QUIT到主进程导致“可执行升级”,这个序列可以完全重新读取整个配置,甚至升级 Nginx 可执行文件。它还会重新加载磁盘缓存(这可能很耗时)。此方法导致 服务也中断。

  • Official documentation

    关于configuration - 有没有办法动态配置nginx(或其他快速反向代理)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8982717/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com