5

所以我们正在运行一个由 Apache 2.2 进行负载平衡的 2+ 个后端服务器(可能是 JBoss 服务器)的集群。有时,后端服务器可能会变得无响应(这意味着它们会等待很长时间才能回复请求,但不会立即关闭连接)。这自然会导致 502“Bad gateway”错误。我对负载均衡器的理解是,它应该故障转移并将请求重定向到其余实例。

我已经看到平衡器的一个节点可以进入错误状态,但永远无法强制将一个节点完全发送到该状态(即在遇到第一个 502 之后执行此操作)。我是否遗漏了什么,或者这只是我想要的一个功能?哦,这是我的配置:

<Proxy balancer://s>
    Order deny,allow
    Allow from all

    BalancerMember http://host1:8080/ route=h1 timeout=20 retry=40
    BalancerMember http://host2:8080/ route=h2 timeout=20 retry=40
</Proxy>

# Distribute by Round Robin, use Sticky Sessions
ProxyPass / balancer://s/ stickysession=JSESSIONID lbmethod=byrequests nofailover=On
ProxyPassReverse /  http://host1:8080/
ProxyPassReverse /  http://host2:8080/

最好的,塞巴斯蒂安

4

1 回答 1

5

您指定 nofailover=On 这意味着它不会进行故障转移,因此会出现 502 错误。如果您希望它进行故障转移,则需要 nofailover=Off 这意味着它应该进行故障转移。

于 2009-05-16T16:06:00.183 回答