我的nginx负载均衡器出了问题。我使用nginx作为反向代理。
这是我的nginx配置 - >
user nobody;
worker_processes 8;
worker_rlimit_nofile 400000;
error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 4042;
use epoll;
multi_accept on;
}
http {
upstream lb {
ip_hash;
server ip1;
server ip2;
server ip3;
}
server {
listen 80 default backlog=10000;
server_name myservername.com;
client_header_timeout 15s;
client_body_timeout 15s;
##########################################
#### Proxy without cache ####
#### ####
location / {
proxy_pass http://ip1;
#proxy_pass http://lb;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
...
ip1 / ip2 / ip3是webserver lighttpd(使用php-cgi ...)。
当在proxy_pass ip1或ip2或ip3上直接设置nginx的配置时,所有工作都没有问题(没有错误,连接速度很快......)
现在如果我使用proxy_pass http:/ / lb; ,运行2分钟后我就遇到了很多错误(即使是在低流量时间),与网站的连接速度很慢(或者这个页面没有正确重定向......)
connect() failed (111: Connection refused) while connecting to upstream
upstream prematurely closed connection while reading response header from upstream
upstream timed out (110: Connection timed out) while reading response header from upstream
我的问题是为什么使用上游/负载均衡,nginx无法工作?