负载平衡器监控浪涌队列长度

时间:2017-07-10 16:47:37

标签: amazon-web-services amazon-elb amazon-elastic-beanstalk

有人能解释一下我的AWS Load Balancer发生了什么吗?

我看到指标浪涌队列长度,两条线以累积方式“一起”增长: Surge Queue Length

从文档中可以看出,这是负载均衡器上的请求队列要由后端(EC2实例)处理,我发现的所有故障排除建议都指向后端的性能问题,但是在我的情况下,实例是健康的(CPU,内存,磁盘I / O等等。一切都很好)。

此Load Balancer属于仅具有一个实例的Elastic Beanstalk工作线程环境。每次部署新版本时,似乎都会清除浪涌队列长度

任何人都可以解释为什么即使我的后端实例正常,这个累积队列也在增长?为什么我在部署时会被清除?

1 个答案:

答案 0 :(得分:1)

即使后端的EC2实例看起来很健康(CPU,内存,磁盘等......),它也可能落后于处理ELB发送的请求。如果(在我的情况下)EC2在具有Docker的Elastic Beanstalk环境下运行,EC2实例只能运行一个Docker容器,就会发生这种情况。在这种情况下,运行应用程序的Docker容器无法处理所有传入请求,但由于它位于隔离环境(容器)内,因此无法使用EC2实例中的所有可用资源。

在我的情况下,即使我的EC2实例报告他们使用的是5%CPU,我也必须在Autoscaling Group(坐在ELB后面)内扩展我的EC2实例。扩展后(CPU利用率下降到1%),我的性能问题消失了。

希望这有帮助