在原点关闭时重试之间添加延迟(Nginx,502)

时间:2017-08-27 02:36:31

标签: nginx proxy delay

几乎是瓷砖。在nginx后面有一个节点应用程序,当我重新启动应用程序时,我希望nginx延迟响应,并重试执行请求几次,中间有一些延迟。我找到的所有内容只会立即重试N次,但是当应用程序停止重启时,这显然没用,这是我的用例。有什么办法吗?我甚至不关心它是多么的hacky /如果它是,我只需要一个解决方案,不是启动应用程序的第二个实例,并在第二个实例开始时杀死第一个实例。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以将同一服务器添加为多个上游服务器,并配置bufferproxy_next_upstreamproxy_next_upstream_timeout选项。 Reference

proxy_next_upstream_tries

但是,我建议您使用支持优雅重新加载/重启的 upstream node_servers { server 127.0.0.1:12005; server 127.0.0.1:12005; } ... proxy_next_upstream http_502; proxy_next_upstream_timeout 60; proxy_next_upstream_tries 3; 等进程管理器。如果您在集群模式下为nodejs服务器使用多个CPU,则它们是相关的。