Nginx-一次转发到多个服务器?
是否可以配置nginx,将请求发送到n个已知位置,并在收到其中一个位置的20倍后立即返回响应Nginx-一次转发到多个服务器?,nginx,reverse-proxy,Nginx,Reverse Proxy,是否可以配置nginx,将请求发送到n个已知位置,并在收到其中一个位置的20倍后立即返回响应 如果有帮助,我可以100%保证只有一台主机响应,否则根本不会有成功响应。您可以设置一个负载平衡池,删除在某个时间段内没有响应的服务器。使用ip_散列的粘性会话,其中相同的ip地址返回到相同的服务器。如果会话信息未在服务器之间共享,则可用于维护会话。nginx有一个很好的文档,包含各种选项 http { upstream my_pool { ip_hash; ser
如果有帮助,我可以100%保证只有一台主机响应,否则根本不会有成功响应。您可以设置一个负载平衡池,删除在某个时间段内没有响应的服务器。使用ip_散列的粘性会话,其中相同的ip地址返回到相同的服务器。如果会话信息未在服务器之间共享,则可用于维护会话。nginx有一个很好的文档,包含各种选项
http {
upstream my_pool {
ip_hash;
server 1.2.3.4 weight=3 max_fails=3 fail_timeout=20s;
server 1.2.3.5 weight=4 max_fails=3 fail_timeout=20s;
server 1.2.3.6 weight=3 max_fails=3 fail_timeout=20s;
}
server {
listen 80 ;
server_name domain.org www.domain.org;
location / {
proxy_set_header HOST $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://my_pool;
}
}
}
您可以设置一个负载平衡池,删除在某个时间段内没有响应的服务器。使用ip_散列的粘性会话,其中相同的ip地址返回到相同的服务器。如果会话信息未在服务器之间共享,则可用于维护会话。nginx有一个很好的文档,包含各种选项
http {
upstream my_pool {
ip_hash;
server 1.2.3.4 weight=3 max_fails=3 fail_timeout=20s;
server 1.2.3.5 weight=4 max_fails=3 fail_timeout=20s;
server 1.2.3.6 weight=3 max_fails=3 fail_timeout=20s;
}
server {
listen 80 ;
server_name domain.org www.domain.org;
location / {
proxy_set_header HOST $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://my_pool;
}
}
}
你能详细说明什么是“得到20倍”吗?正确配置的负载平衡池将删除在一段时间内没有响应的服务器。是的,关键字是:负载平衡。我刚刚意识到我需要做的唯一一件事就是在n服务器前面设置负载平衡器,剩下的工作由nginnx来完成。谢谢。好的,听起来不错。我将添加一个带有设置的答案,添加一个超时参数。您能详细说明一下“Get 20x”是什么吗?正确配置的负载平衡池将删除在一段时间内没有响应的服务器。是的,关键字是:负载平衡。我刚刚意识到我需要做的唯一一件事就是在n服务器前面设置负载平衡器,剩下的工作由nginnx来完成。谢谢。好的,听起来不错。我将添加一个带有设置的答案,添加一个超时参数。