【发布时间】:2021-04-21 12:49:19
【问题描述】:
我有一个要部署在 kubernetes 中的 spring 批处理应用程序。它不包括 spring-boot-starter-web 因为它只是运行 cron 作业。有没有办法在不添加 starter-web 依赖项的情况下公开 spring-actuator 健康端点。
【问题讨论】:
标签: spring spring-boot spring-batch spring-boot-actuator
我有一个要部署在 kubernetes 中的 spring 批处理应用程序。它不包括 spring-boot-starter-web 因为它只是运行 cron 作业。有没有办法在不添加 starter-web 依赖项的情况下公开 spring-actuator 健康端点。
【问题讨论】:
标签: spring spring-boot spring-batch spring-boot-actuator
批处理应用程序本质上是短暂的。在作业期间公开执行器端点是没有意义的(当您查询端点时作业是否仍在运行?)。此处已对此进行了讨论:https://github.com/spring-projects/spring-boot/issues/21024。
春季批次的Liveliness Probe和Readiness Probe
这里也一样。就绪探测通常用于查看服务是否已准备好接受请求。我不确定对批处理作业进行就绪探测是否有意义。然而,一个活跃度探测可能是有意义的(看看一个工作是否是“活的”,在这种情况下,需要定义“活”的含义),但我从来没有在实践中看到过这种探测的实现,因为还有其他的表示报告作业是否正在运行(例如带有千分尺的实时指标)。
【讨论】: