【发布时间】:2018-04-08 06:24:09
【问题描述】:
我们有一个 REST API。现在我们的/health 对我们拥有的每个依赖项(一个数据库和几个微服务)进行冒烟测试,然后如果没有错误则返回200。
问题在于,并非所有依赖项都是强制我们的应用程序才能工作的。因此,虽然访问数据库的问题可能很严重,但访问某些微服务的问题只会影响我们应用的一小部分。
除此之外,我们还有 Amazon ELB。仅仅因为一个依赖项是 unhealty 就将我们的应用程序标记为 unhealty 似乎并不正确。 ELB 应该只尝试恢复 unhealty 依赖,这样我们的应用就会再次healthy。
这就引出了一个问题:我们应该在健康检查中实际检查什么?因为看起来我们根本不应该检查任何依赖项。另一方面,了解我们的应用程序访问其所有依赖项的状态实际上非常有帮助(例如,用于解决问题),那么为此目的使用其他一些端点是否很常见(比如/sanity 或/diagnostics)?
【问题讨论】:
标签: amazon-web-services microservices