我在以下设置上遇到问题:
API网关-> VPC链接->私有NLB->目标组-> AWS ECS Fargate
如果我在指定端点上将NLB的运行状况检查设置为TCP / HTTP,则该端点会因内部请求而死(我没有检查通过API网关的请求):
除了由自己的体系结构破坏运行状况的端点之外,我的这种行为的问题还在于应用程序的功能正在受苦(我收到的缓慢响应中有四分之一收到对API的请求)。
我试图将运行状况检查的行为修改为仅TCP,响应缓慢。
我尝试暂时切换到公共ALB,但我进行了两次健康检查,相隔30秒,但我的应用程序平均响应时间为100毫秒。
因此,以“双重健康检查”的含义为例:
在00:00:00进行健康检查1.1
在00:00:10进行健康检查2.1
00:00:30进行健康检查1.2
在00:00:40进行健康检查2.2
有什么想法吗?
答案 0 :(得分:0)
TL / DR;
启用“跨区域负载平衡” NLB标志。
问题是未检出“跨可用性区域”。 看起来,当请求由位于与尝试重定向的AZ不同的AZ的NLB节点处理时,它将尝试在内部解析AZ中的IP,如果失败,则将请求重定向至适当的可用区中的另一个NLB节点,它将能够这样做,从而达到目标。