我得到了间歇性的,但经常503错误(“服务不可用:后端服务器处于容量”)从一个站点由2t2,中型实例后的ELB。没有一个处于特别沉重的负荷下,所有的监测似乎都正常。
这里的AWS文档:http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/ts-elb-error-message.html说一个潜在的原因是ELB和EC2s之间的超时设置不匹配:“将保持活动超时设置设置为大于或等于负载均衡器的空闲超时设置”。
EC2s上的Apache conf有:
负载均衡器上的空闲超时为60秒。
因此,这似乎是一个原因,但我对解决办法不太确定。增加Apache并不是--我理解--通常是建议的,我也不确定减少KeepAliveTimeout上的空闲超时对站点性能有什么影响。
推荐的方法是什么?如何了解设置的理想设置以及它所处理的流量级别(目前大约为30-50个请求/分钟)?
发布于 2015-04-09 03:45:49
我会降低ELB的空闲超时时间。客户端将需要更频繁地打开新连接,但它只是比重用备存连接稍微慢一些。
在Apache中提高到60也可以修复503,但是您需要小心,不要耗尽连接或内存,特别是使用Pre叉mpm,因为您将获得更多用于“保持活动”的插槽。使用worker mpm (或者如果您不害怕“此mpm是实验性的”警告),请确保您有足够高的MaxClients来处理所有请求,但足够低到不会耗尽备注。
https://stackoverflow.com/questions/29509665
复制相似问题