[发明专利]一种基于分布式锁加载分布式任务的方法以及装置在审

专利信息
申请号: 201610159146.X 申请日: 2016-03-18
公开(公告)号: CN107203429A 公开(公告)日: 2017-09-26
发明(设计)人: 张一淳 申请(专利权)人: 阿里巴巴集团控股有限公司
主分类号: G06F9/50 分类号: G06F9/50
代理公司: 北京市清华源律师事务所11441 代理人: 沈泳,王永秀
地址: 英属开曼群岛大开*** 国省代码: 暂无信息
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 分布式 加载 任务 方法 以及 装置
【说明书】:

技术领域

本申请涉及分布式系统技术领域,具体涉及一种基于分布式锁加载分布式任务的方法。本申请同时涉及一种基于分布式锁加载分布式任务的装置。

背景技术

随着计算机技术和网络技术的不断发展,计算机系统的规模变得越来越大,传统的集中式系统已经无法满足用户对计算机系统的需求,各种系统架构模型层出不穷,分布式系统架构应运而生,ZooKeeper(典型的分布式数据一致性解决方案)作为一个分布式的、开放源码的分布式应用程序协调服务,供了高效且可靠的分布式协调服务,诸如命名统一服务、配置管理和分布式锁等基础服务,得到了广泛的应用,尤其是分布式锁服务得到了广泛的应用,分布式锁是控制分布式系统之间同步访问共享资源的一种方式;对于不同的系统或者同一系统的不同主机之间共享一个或一组资源,在访问这些资源的时候,往往需要一些互斥手段(如分布式锁)来防止彼此之间的干扰,以保证数据的一致性。

对于分布式系统的机器集群中的机器,需要加载自身应当执行的任务,在加载任务的过程中,还应当保证不能重复加载或者漏加载任务。尤其是对于一些高可用性要求比较高的分布式系统,比如分布式系统的监控场景下,由于加载的任务是用于监控,因此,任务初始化加载和增量任务的加载的速度要尽可能的快,以保证监控服务的及时性。

目前,现有技术在加载分布式任务时,基于ZooKeeper实现分布式系统的机器集群的管理,采用Master-Slave(管理者-追随者)模式,用ZooKeeper实现一个互斥的分布式锁,机器集群中各机器在启动时,争抢所述分布式锁,争抢所述分布式锁成功的机器成为机器集群中的Master(管理者),未争抢到所述分布式锁的机器为Slave(追随者);在加载任务时,由Master(管理者)从数据库或相应服务中进行任务加载,同时,Master(管理者)从ZooKeeper获取所有Slave(追随者)的列表,按照预设的分配规则将加载的任务分配给各个Slave(追随者),由各个Slave(追随者)将任务加载到自身对应的机器上执行。

上述现有技术提供的方法存在明显的缺陷。

现有技术采用Master-Slave(管理者-追随者)模式,在任务初始化加载时,Master(管理者)不可避免的需要加载全部的任务,如果分布式系统中Slave(追随者)的数目为N,并且任务分配是均匀的情况下,一台Slave(追随者)加载分配给自身的任务的时间是T,则Master(管理者)加载所有的任务需要耗时N*T,随着分布式系统中任务量的增加,以及机器集群中机器数的增加,加载任务的时间会大大增加,导致任务加载耗时较长,会出现任务加载不及时或者加载延时较长情况,无法满足实际应用中的分布式系统对高可用性的要求,存在一定的缺陷。

发明内容

本申请提供一种基于分布式锁加载分布式任务的方法,以解决现有技术的存在的加载分布式任务耗时较长的问题。

本申请同时涉及一种基于分布式锁加载分布式任务的装置。

本申请提供一种基于分布式锁加载分布式任务的方法,包括:

工作机从其抢占到的分布式锁中读取预先存储的任务配置信息,作为所述工作机的任务配置信息;

根据所述任务配置信息,从任务数据库中查找并加载所述工作机对应的分布式任务;

设置未抢占到所述分布式锁的机器为备机。

可选的,所述工作机从其抢占到的分布式锁中读取预先存储的任务配置信息,作为所述工作机的任务配置信息步骤执行之前,执行如下步骤:

分布式系统中可提供计算资源的N+M台所述机器,基于分布式锁服务争抢预设的数目为N的所述分布式锁;每个分布式锁只能被一台机器抢占;

针对N+M台所述机器中的每一台机器,判断所述机器是否成功抢占所述分布式锁;

若是,设置成功抢占所述分布式锁的机器为所述工作机,并执行所述工作机从其抢占到的分布式锁中读取预先存储的任务配置信息,作为所述工作机的任务配置信息步骤;

若否,返回执行所述分布式系统中可提供计算资源的N+M台所述机器,基于分布式锁服务争抢预设的数目为N的所述分布式锁步骤。

可选的,所述任务配置信息,包括:

所述分布式锁的数目N和所述分布式锁各自的锁标识;

其中,所述分布式锁的锁标识小于所述分布式锁的数目N,且大于等于0。

可选的,所述分布式任务记录在所述任务数据库的数据表中,所述数据表的主键包括:与所述分布式任务一一对应的任务标识;

每个任务标识所在的记录用于记录一个分布式任务。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201610159146.X/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top