在用于群集的简单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/