我的主要目标是避免在我可以预测我的服务将关闭时将健康状态更新为“严重”的大延迟。
我会将其与已经到位的 http 健康检查结合起来。
考虑的解决方案:
最佳答案
如果您可以预测服务将关闭,则应考虑将其置于维护模式。这将立即从 DNS 和 API 结果中删除它。 Here is the link to the documentation 关于如何将服务置于维护模式。
健康检查总是会有延迟,因为它们是定期执行的,旨在监控服务是否出现意外停机。如果您知道服务因更新/升级/重启/退役而中断,则对用户影响最小的最佳方法是在对其进行任何工作之前将其删除。
关于consul - 是否可以配置可以设置为关键但在 TTL 后默认为健康的 Consul 健康检查?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56593109/