gpt4 book ai didi

cron - 如何设计分布式作业调度器?

转载 作者:行者123 更新时间:2023-12-02 02:26:23 26 4
gpt4 key购买 nike

我想设计一个作业调度器集群,其中包含多个主机来进行cron作业调度。例如,一个工作需要 run every 5 minutes提交到集群后,集群应该指出下次运行要触发哪个主机,确保:

  1. Disaster tolerance: if not all of the hosts are down, the job should be fired successfully.
  2. Validity: only one host to fire next job run.

由于容灾的原因,作业无法绑定(bind)到特定主机。一种方法是所有主机轮询数据库表(当然带有锁),这保证只有一台主机获得下一个作业运行。由于经常锁表,有没有更好的设计?

最佳答案

使用Quartz framework为了那个原因。它具有类似 cron 的语法,可以集群化,集群中一次只有一台主机执行一项工作。如果主机或作业失败,另一台主机将重试待处理的作业。

关于cron - 如何设计分布式作业调度器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26890312/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com