[发明专利]主动领取任务的方法、工作节点、系统及存储介质有效
申请号: | 201710439793.0 | 申请日: | 2017-06-12 |
公开(公告)号: | CN107249029B | 公开(公告)日: | 2019-09-06 |
发明(设计)人: | 周德江;郑荃玮 | 申请(专利权)人: | 优刻得科技股份有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 上海华诚知识产权代理有限公司 31300 | 代理人: | 肖华 |
地址: | 200090 上海市杨浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 主动 领取 任务 方法 工作 节点 系统 存储 介质 | ||
本发明提供一种主动领取任务的方法、工作节点、系统、非易失性存储介质,该系统包括数据中心以及多个工作节点,多个工作节点中的每个工作节点周期地从数据中心领取属于自已的任务,同时交出不属于自己的任务。每个工作节点周期地将本地任务列表传送给数据中心,用于更新数据中心的配置信息。通过本发明,可以确保由多个工作节点组成的集群中的每个工作节点领取到属于自己的任务。同时,整个集群架构的异构程度性被减少,同时有利于在集群中动态地增删工作节点。
技术领域
本发明涉及工作节点领取任务,尤其涉及主动领取任务的方法、工作节点、系统及存储介质。
背景技术
为了保证服务的可扩展性和高可用性,将服务从单一服务实体扩展成集群协同工作的服务实体(工作节点)是非常有意义的。通过负载均衡算法,主工作节点选举,广播系统等方法管理集群中各个工作节点的地址信息(IP地址),可以实现某个任务能够被分发到集群的某台工作节点。为了能够协同工作,集群中的各个工作节点需要定期发送一个心跳信息。在没有客户端的集群中,通常需要一个主工作节点负责任务的分配。主工作节点将所有任务分别分配给各个工作节点,也就是说,各个工作节点根据主工作节点的分配来被动地领取任务,然后对领取的任务进行处理。
在这种情况下,主工作节点中除了具有与其他工作节点相同的处理逻辑之外,不可避免地增加有用于分配的计算逻辑,因此,主工作节点的工作方式与其他各个工作节点的工作方式不同。这就导致整个集群架构的差异性,从而增加了整个集群架构的异构程度性。另一方面,在某个任务错误地同时被两个工作节点领取的情况下,还会导致任务领取冲突的问题。
发明内容
本发明提供了一种主动领取任务的方法,多个工作节点中的每个工作节点周期地进行以下步骤,以从数据中心主动领取任务:
S0)从所述数据中心中获取多个任务以及多个当前工作节点信息,并根据所述多个任务以及所述多个当前工作节点信息,进行一致性哈希计算,得到多个实际工作节点信息;
S1)根据所述多个当前工作节点信息,判断所述多个任务中的当前任务是否被领取,如果否,则进入步骤S2),如果是,则进入步骤S3);
S2)根据所述多个实际工作节点信息,将所述当前任务添加到所述数据中心中的所述多个当前工作节点信息中,并进入步骤S10);
S3)根据所述多个当前工作节点信息,判断所述当前任务是否被本地领取,如果是,则进入S4,否则进入S10;
S4)判断所述当前任务在多个当前工作节点信息中对应的当前工作节点是否与所述当前任务在所述多个实际工作节点信息中对应的实际工作节点相同,如果是,则进入S6,否则进入S5;
S5)从本地任务列表中判断所述当前任务的处理状态,如果是第一状态或第二状态,则进入步骤S9,如果是第三状态或第四状态,则进入S8;
S6)判断所述当前任务是否在所述本地任务列表中,如果是,则进入S10,否则进入S7;
S7)将所述当前任务添加到所述本地任务列表中,并进入S10;
S8)从所述本地任务列表中删除所述当前任务,并根据所述多个实际工作节点信息,将所述当前任务更新到所述数据中心中的多个当前工作节点信息中,并且进入S10;
S9)将所述当前任务的所述处理状态设置为所述第二状态,并且进入S10;
S10)判断所述当前任务是否是所述多个任务中的最后一个任务,如果是,则返回S0,否则进入S11;
S11)将所述多个任务中的下一个任务确定作为所述当前任务,并返回S1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于优刻得科技股份有限公司,未经优刻得科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710439793.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种太阳能光伏组件安装密封胶
- 下一篇:包括垂直探针的测试头