在用于群集的简单nginx配置下面,然后关闭192.168.1.77:3032服务器。

我不时发现502错误,并且在日志中发现“连接上游客户端时没有上游上游”,而“服务器unix:///var/tmp/site.sock备份”;工作,而且我猜想必须处理请求,但nginx却发现它不是实时的。可能是什么问题呢?

Nginx的配置:

       upstream uwsgicluster {
            server 192.168.1.77:3032;
            server unix:///var/tmp/site.sock backup;
        }


server {
    listen      80;
    server_name site.com www.site.com;
    access_log  /var/log/nginx/sire.log;
    error_log  /var/log/nginx/site-error.log;


    location / {
            uwsgi_pass   uwsgicluster;
            include        uwsgi_params;
        }
}

如果我删除192.168.1.77:3032服务器
从上游并重新启动nginx可以正常工作,但是在关闭192.168.1.77:3032的情况下,服务器错误会定期发生

最佳答案

我认为nginx仍然会尝试上游块中的两台服务器,即使其中一部服务器不工作也是如此。当它无法连接到其中一个时,它将尝试另一个,但仍会记录您所看到的错误。

默认情况下,proxy_next_upstream设置将在错误或超时时尝试下一个上游服务器。您可以覆盖以下内容:

http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_next_upstream

您是只看到错误日志,还是看到了不良行为/负载平衡?

关于nginx - uwsgicluster-连接到上游客户端时没有事件的上游,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13222274/

10-10 07:23