【发布时间】:2015-07-07 11:42:58
【问题描述】:
我们通常在我们的高可用性应用程序中非常频繁地 ping /health 以确定何时需要进行故障转移。如果使用的健康指标不会对外部依赖项(如数据库或 Web 服务)进行昂贵的调用,则 Spring Boot Actuator 可以很好地解决此问题。但是,我们喜欢编写健康指标的简便性以及它插入/health 端点的方式。
有什么方法可以配置 Spring Boot Actuator,以便在某些情况下只执行指标的子集?如果有,怎么做?
谢谢!
【问题讨论】:
-
为什么不将您的响应缓存在您的自定义健康指标上,以便进行几次通话。因此,实际上只执行每隔一个或可能每 5 次或 10 次检查。
-
@hrrgttnchml ,这种方法还是有缺点的。如果
/health检查调用非常频繁地运行(比如每 5 秒),那么调用仍然很昂贵。此外,我相信缓存是针对整个响应的,并且必须为特定的健康指标实现自定义缓存。 -
不,我的意思不是缓存整个响应,而是在运行状况检查本身内部。因此,并非每次调用都会进行昂贵的计算。
-
@hrrgttnchml 这绝对是可能的。我希望其中一位 Spring Boot 开发人员能够加入并理解他们对接受这个作为新功能的兴趣(在他们的 GitHub 上创建问题之前)。
标签: spring-boot spring-boot-actuator