1

示例场景:我有两个 API(帐户 API 和向用户公开的 API),其中帐户 API 将为我提供一个帐户列表(大约最小大小为 500,并且在添加更多帐户时可能会增加)。我想根据过滤器获取帐户并将其他 API 中的数据公开给用户。

我正在使用 Spring @scheduled 来安排每 30 分钟获取帐户 API 的作业。

在单个 Pod 中,调度程序将轻松执行作业。

当应用程序被复制到 Kubernetes 中的三个 Pod 时,所有调度程序将同时唤醒,这是调度程序作业的重复。

预期行为:

我希望调度程序以同步的方式工作,如果一个调度程序正在处理一个帐户,另一个调度程序应该在下一个帐户上工作。基本上,我希望调度程序像多线程程序一样工作。

调度程序 1 处理 200 个帐户,调度程序 2 处理 200 个帐户,调度程序 3 处理 100 个帐户。

我是 Spring Boot 应用程序开发的新手,想知道是否可以完成上述操作。

我读到了 Shedlock,但它一次只能运行一个调度程序。但我喜欢使用所有调度程序并更快地处理帐户

4

0 回答 0