Amazon web services ECS Fargate&x2B;网络负载平衡器健康检查

Amazon web services ECS Fargate&x2B;网络负载平衡器健康检查,amazon-web-services,amazon-ecs,aws-fargate,Amazon Web Services,Amazon Ecs,Aws Fargate,我遇到以下设置问题: API网关->VPC链路->专用NLB->目标组->AWS ECS Fargate 如果我将NLB的运行状况检查设置为指定端点上的TCP/HTTP,则该端点会因内部请求而受到致命打击(我检查过API网关没有任何请求): 除了我自己的体系结构对健康端点进行垃圾处理之外,我的这种行为的问题是应用程序的功能正在受到影响(我一直收到对API的4个get请求中的1个响应很慢) 我试图将健康检查的行为修改为只使用TCP,同样反应缓慢 我尝试暂时切换到公共ALB,我正在接受两次健康检查

我遇到以下设置问题:

API网关->VPC链路->专用NLB->目标组->AWS ECS Fargate

如果我将NLB的运行状况检查设置为指定端点上的TCP/HTTP,则该端点会因内部请求而受到致命打击(我检查过API网关没有任何请求):

除了我自己的体系结构对健康端点进行垃圾处理之外,我的这种行为的问题是应用程序的功能正在受到影响(我一直收到对API的4个get请求中的1个响应很慢)

我试图将健康检查的行为修改为只使用TCP,同样反应缓慢

我尝试暂时切换到公共ALB,我正在接受两次健康检查,间隔30秒,但我的应用程序平均响应时间为100毫秒

因此,作为我所说的“双重健康检查”的一个例子:

健康检查1.1 00:00:00

健康检查2.1 00:00:10

健康检查1.2 00:00:30

健康检查2.2 00:00:40

有什么想法吗?

TL/DR

启用“跨区域负载平衡”NLB标志

问题是“交叉可用性区域”未签出。 当一个NLB节点处理一个请求时,该节点位于与其尝试重定向的节点不同的AZ中,它会尝试在AZ中内部解析IP,如果失败,它会将该请求重定向到相应AZ中的另一个NLB节点,该节点将能够这样做,从而到达目标