在我们的项目当中,使用定时任务是避免不了的,我们在部署定时任务时,通常只部署一台机器。部署多台机器时,同一个任务会执行多次。比如给用户发送邮件定时任务,每天定时的给用户下发邮件。如果部署了多台,同一个用户将发送多份邮件。只部署一台机器,可用性又无法保证。Elastic-Job框架可以帮助解决定时任务在集群部署情况下的协调调度问题,保证任务不重复不遗漏的执行。
Elastic-Job是当当网在2015年开源的一个分布式调度解决方案,由两个相互独立的子项目Elastic-Job-Lite和Elastic-Job-Cloud组成。在这里,主要对Elastic-Job-Lite技术做分析。
Elastic-Job-Lite架构图
Elastic-Job-Lite框架使用zookeeper作为注册中心,从架构图可以看出,Elastic-Job-