【发布时间】:2021-03-15 02:50:43
【问题描述】:
我有一个微服务应用程序,它有多个在 ASG 中运行的实例。所有这些应用程序都维护一些内部状态。此应用程序公开 Actuator 端点以刷新其状态。我有一些在本地运行的应用程序。场景是,在某些情况下,我想调用在 AWS 中运行的应用程序的那些 Actuator 端点来刷新它们的状态。问题是,如果我调用 LoadBalanced url,那么调用只会转到一个实例。所以,我正在考虑以下解决方案。
- 使用 SQS 并让本地应用程序发布和 AWS 应用程序使用该消息。但这里也只有一个实例会收到消息。
- 使用 SNS,但侦听器基于 http/s,因此 URL 将保持不变,因此我认为只有一个实例会收到消息。 (AFAIK)
还有其他解决方案吗?请提出建议。
谢谢
【问题讨论】:
-
您可以使用从位于 VPC 中的 API 网关调用的 Lambda,首先列出 ASG 中的所有实例,然后连接到每个实例并交付有效负载(需要您设置正确的安全性组)。
标签: amazon-web-services spring-boot microservices amazon-sqs amazon-sns