运行 Spring 在 Kubernetes 上使用 Quartz 调度程序启动项目

Running a Spring Boot project with Quartz scheduler on Kubernetes

我正在开发一个 Spring 启动项目,它有一个使用 Quartz 的调度程序服务。此调度程序服务通过调用单独的微服务来运行特定的计划或 cron 作业。

现在我计划在 kubernetes 上部署我的微服务,我想确保我的调度程序服务也是集群的。我注意到 Quartz supports clustering 使用 JDBC-JobStore 但我不完全确定是否可以使用 kubernetes 部署这种情况。如果我有 3 pods 个使用 kubernetes 管理和扩展的调度程序服务,它会工作吗?

可以,只要你 运行 石英处于 集群模式 并设置 org.quartz.scheduler.instanceId = AUTO 它确实有效。

在缩放的情况下,只有一些 pods 将被添加或删除,Quartz 会处理它,因为每个实例都有其不同的实例 ID。