【技术实现步骤摘要】
基于ZooKeeper的分布式定时任务分发处理方法及系统
[0001]本专利技术涉及计算机
,具体地,涉及一种基于ZooKeeper的分布式定时任务分发处理方法及系统。
技术介绍
[0002]ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
[0003]专利文献CN112433830A公开了一种基于ZooKeeper的分布式任务调度方法、系统及存储介质,该方法包括:利用调度中心服务器向ZooKeeper集群创建临时节点,其中,每个临时节点对应一个节点序号;利用调度中心服务器基于临时节点的节点序号进行选举,以从所有临时节点中选择一个临时节点来触发任务。
[0004]但是专利文献CN112433830A只能有一台服务器获得定时任务执行权,无法充分利用集群服务资源。
[0005]专利文献CN105100 ...
【技术保护点】
【技术特征摘要】
1.一种基于ZooKeeper的分布式定时任务分发处理方法,其特征在于,包括:步骤S1:将服务与ZooKeeper模块连接;步骤S2:定时任务分发服务监听ZooKeeper模块,获取所述服务并处理后分发到对应的任务处理器中执行。2.根据权利要求1所述的基于ZooKeeper的分布式定时任务分发处理方法,其特征在于,所述步骤S2在独立的定时任务分发服务模块中处理,包括如下子步骤:步骤S2.1:在所述服务中获取所有存活的服务,并给所述存活的服务对应编号;步骤S2.2:获取所有待处理的任务,得到所述编号对应的任务集;步骤S2.3:将所述任务集对应编号映射任务处理器对应服务,并分发任务集到对应任务处理器中执行。3.根据权利要求1所述的基于ZooKeeper的分布式定时任务分发处理方法,其特征在于,所述任务处理器数量有一个或多个;所述任务处理器包含任务接收接口,所述任务接收接口能够接收处理定时任务分发服务模块分发的任务;能够根据不同业务类型的定时任务对接口进行实现;并根据不同的业务类型对任务处理器编码,使得定时任务与任务处理器一一对应匹配。4.根据权利要求2所述的基于ZooKeeper的分布式定时任务分发处理方法,其特征在于,步骤S2.2包括:步骤S2.2.1:获取所有待处理的任务,根据任务配置的任务周期,筛选当前任务中需处理的任务数;步骤S2.2.2:获取所有任务周期,计算下次最近任务周期触发时间T1,若无待处理任务或计算下次触发周期大于设定阈值T0,则定时任务分发服务下次触发周期为T0否则为T1。5.根据权利要求2所述的基于ZooKeeper的分布式定时任务分发处理方法,其特征在于,步骤S2.3包括:步骤S2.3.1:定时任务分发服务调用对应主服务任务接受接口;步骤S2.3.2:任务接收器获取任务集且遍历任务集,并根据业务类型代码分发到对应的任务处理器中处理;步骤S2.3.3:任务处理器处理对应的任务,并判断当前任务处理是否异常,若否,则更新数据库当前任务状态为处理完成;若是,则触发步骤S2.3.4;步骤S2.3.4:判断当前任务版本是否大于设定值,若是,则更新数据库当前任务状态为失败且不再进入下个任务周期;若否,则当前任务数据版本号加一,触发步骤S2.2在下个周期继续执行。6.一种基于Z...
【专利技术属性】
技术研发人员:吴炜东,肖健,郑少聪,陈志强,
申请(专利权)人:兴业数字金融服务上海股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。