【发布时间】:2020-07-01 11:05:26
【问题描述】:
基本上我的 cron 每 2 分钟更新一次数据库。但我需要运行另一个每 24 小时更新一次数据库的 cron。我需要确保在第二个 cron(每天)运行时没有竞争条件,即两个 cron 不能一起运行并重叠。这需要在 Kubernetes 集群中使用作业来实现。
我的解决方案是每 2 分钟运行一次第一个 cron,但在第二个 cron 运行时(每天)延迟 5 分钟。
欢迎任何替代解决方案。
【问题讨论】:
-
完成这些作业需要多长时间?每 2 分钟运行一次是
*/2 * * * *,每 24 小时运行一次是0 0 * * *(每个午夜)。设置完成后,您可以创建一个检查时间的脚本,如果时间等于午夜,则在运行之前让它休眠一段时间。如果它看起来适合您,请告诉我,我可以创建一个包含更多详细信息的答案。 -
你检查过我的回答了吗,如果对你有帮助,请告诉我,并考虑accepting 并点赞。
标签: kubernetes cron cron-task kubernetes-cronjob