0

我为微服务开发了两个 Spring Boot 应用程序,并使用 ECS 将这些应用程序部署到容器中。为此,我遵循了官方宠物诊所示例(https://github.com/aws-samples/amazon-ecs-java-microservices/tree/master/3_ECS_Java_Spring_PetClinic_CICD)。一切似乎都正常工作,但是当我经常向 ALB 发出请求时,我会收到 502 或 503 HTTP 错误,并且有几次我可以看到应用程序的正确响应。有人能帮我吗?提前致谢。

4

1 回答 1

0

当您没有运行健康的任务时,您会收到 502,而当任务正在启动/重新启动时,您会收到 503。

所有这一切都意味着您的任务已停止,然后您的集群重新启动它,因此您应该找到导致任务失败的原因。

它可能是直接在你的代码中导致它崩溃的东西。或者它可能是您的目标组中定义的集群运行状况检查失败。

首先,您应该在 AWS ECS 控制台中查看您的任务,并查看您的任务在停止时收到的错误。

但是因为你可以提出请求一段时间然后它失败了。我很确定您的问题来自您的健康检查。因此,进入任务使用的目标组(在 AWS EC2 控制台中)并确保配置的运行状况检查路径存在并返回 200 状态代码。

于 2019-09-04T13:09:52.520 回答