【发布时间】:2015-01-09 12:03:19
【问题描述】:
我想设计一个作业调度器集群,其中包含几个主机来做 cron 作业调度。例如,一个需要run every 5 minutes的作业被提交到集群,集群应该指出下一次运行哪个主机,确保:
- 容灾:如果不是所有主机都关闭,作业应该会成功触发。
- 有效性:只有一个主机可以触发下一次作业运行。
由于容灾,作业无法绑定到特定主机。一种方法是所有主机轮询数据库表(当然有锁),这保证只有一个主机获得下一个作业运行。既然经常锁表,有没有更好的设计?
【问题讨论】:
标签: cron distributed cron-task system-design