我有3个Apache Web服务器设置在另一个运行mod_proxy_balancer的Apache服务器之后。
在今天,其中一个networking服务器重新启动。 大约需要16分钟才能重新启动。
在此期间,我可以在我的Apache mod_proxy_balancer服务器上的错误日志中每隔30秒看到以下日志行
[Tue Sep 30 07:04:42 2014] [error] ap_proxy_connect_backend disabling worker for (s1-sc1-c-use)
在16分钟的停电期间,这被logging了32次
我正在试图弄清楚这里发生了什么事情。 我担心的是,由于我的平衡器configuration不足,平衡器反复尝试向重新启动服务器发送请求(并因此将错误返回给用户)。
为什么Apache一再告诉我这是“禁用工人”? 平衡器模块是否间歇地将用户请求发送到发生故障的节点,尝试确定是否备份,或者是否有自己的内部健康检查机制,这对用户是不可见的?
好。 我可以解释这一点。
Apache mod_proxy_balancer没有自己的独立健康检查机制。 平衡员(员工)的状态是根据实际转发的用户请求的结果确定的。
顺序如下:
我的重试值是60秒(默认)。
我看到多个日志条目的原因是我的Apache httpd Balancerconfiguration了多个均衡器,每个都有自己的独立重试计时器。
因此,根据应用程序活动,重试定时器将被任意重置,并被任意testing,这就解释了日志中工作人员状态更新的不均匀分布。