一种区块链任务调度的方法及miner节点技术

技术编号:28878052 阅读:17 留言:0更新日期:2021-06-15 23:13
本申请实施例公开了一种区块链任务调度的方法及miner节点,用于提高分配区块的效率。本申请实施例方法包括:从任务队列获取目标区块的区块号,所述区块号包括标识位、地址位以及阶段位,所述标识位保存所述目标区块的唯一标识,所述地址位保存有与所述miner节点相关联的worker节点的互联网协议IP地址,所述阶段位保存所述目标区块的阶段信息;对所述区块号进行解析,得到第一IP地址;根据所述第一IP地址确定第一worker节点;判断所述第一worker节点是否满足处理所述目标区块的预设条件;若是,则将所述目标区块分配给所述第一worker节点进行处理。

【技术实现步骤摘要】
一种区块链任务调度的方法及miner节点
本申请实施例涉及区块链
,尤其涉及一种区块链任务调度的方法及miner节点。
技术介绍
星际文件系统(IPFS,InterPlanetaryFileSystem)是一个旨在创建持久且分布式存储和共享文件的网络传输协议。IPFS的出现,给人们提供了一种降低数据的维护成本的方案。而基于IPFS的区块链项目如filecoin、filecash以及filestar等应运而生。在基于IPFS的区块链项目中,通常采用一个miner节点和多个worker节点配合组成挖矿集群的方案为需求方提供存储数据的服务。现有技术中,当miner节点从任务队列中获取一个区块时,往往需要先获取到与之关联的所有的worker节点的任务情况,然后筛选出符合条件的worker节点,再根据一定的规则例如随机分配给符合条件的worker节点中的任意一个worker节点,或者分配给符合条件的worker节点中待执行任务数最少的worker节点或者按照其他的方式分配任务等。然而,miner节点从获取区块到完成分配的过程太过繁琐,分配区块的效率低下。
技术实现思路
本申请实施例提供了一种区块链任务调度的方法及miner节点,可以简化miner节点分配区块的过程,提高分配区块的效率。本申请实施例第一方面提供了一种区块链任务调度的方法,应用于miner节点,方法包括:从任务队列获取目标区块的区块号,所述区块号包括标识位、地址位以及阶段位,所述标识位保存所述目标区块的唯一标识,所述地址位保存有与所述miner节点相关联的worker节点的互联网协议IP地址,所述阶段位保存所述目标区块的阶段信息;对所述区块号进行解析,得到第一IP地址;根据所述第一IP地址确定第一worker节点;判断所述第一worker节点是否满足处理所述目标区块的预设条件;若是,则将所述目标区块分配给所述第一worker节点进行处理。可选的,所述判断所述第一worker节点是否满足处理所述目标区块的预设条件包括:判断所述第一worker节点的待完成任务数是否小于任务数阈值;若是,则确定所述第一worker节点满足处理所述目标区块的预设条件。可选的,所述判断所述第一worker节点的待完成任务数是否小于任务数阈值之后,所述方法还包括:若否,则获取所有的待完成任务数低于所述任务数阈值的worker节点作为预选worker节点;从所述预选worker节点中随机选取一个作为第二worker节点;将所述目标区块分配给所述第二worker节点进行处理。可选的,所述从所述预选worker节点中随机选取一个作为第二worker节点之后,所述将所述目标区块分配给所述第二worker节点进行处理之前,所述方法还包括:将所述区块号的地址位改为第二IP地址,所述第二IP地址为所述第二worker节点的IP地址。可选的,所述将所述目标区块分配给所述第二worker节点进行处理之后,所述方法还包括:当接收到所述第二worker节点发送的与所述目标区块对应的阶段变更通知时,更新所述区块号的阶段位。可选的,所述从任务队列获取目标区块的区块号之前,所述方法还包括:根据预设命名规则生成目标区块的区块号;将所述区块号加入任务队列。可选的,所述根据预设命名规则生成目标区块的区块号包括:根据历史任务分配记录,获取权值最高的worker节点的IP地址;根据目标区块的上一个区块的唯一标识生成所述目标区块的唯一标识;根据所述IP地址、所述目标区块的唯一标识生成所述目标区块的区块号。本申请实施例第二方面提供了一种miner节点,包括:获取单元,用于从任务队列获取目标区块的区块号,所述区块号包括标识位、地址位以及阶段位,所述标识位保存所述目标区块的唯一标识,所述地址位保存有与所述miner节点相关联的worker节点的互联网协议IP地址,所述阶段位保存所述目标区块的阶段信息;解析单元,用于对所述区块号进行解析,得到第一IP地址;确定单元,用于根据所述第一IP地址确定第一worker节点;判断单元,用于判断所述第一worker节点是否满足处理所述目标区块的预设条件;第一分配单元,用于当所述判断单元确定所述第一worker节点满足处理所述目标区块的预设条件时,将所述目标区块分配给所述第一worker节点进行处理。可选的,所述判断单元具体用于:判断所述第一worker节点的待完成任务数是否小于任务数阈值;若是,则确定所述第一worker节点满足处理所述目标区块的预设条件。可选的,所述miner节点还包括第二分配单元,所述第二分配单元用于:当所述判断单元确定所述第一worker节点不满足处理所述目标区块的预设条件时,获取所有的待完成任务数低于所述任务数阈值的worker节点作为预选worker节点;从所述预选worker节点中随机选取一个作为第二worker节点;将所述目标区块分配给所述第二worker节点进行处理。可选的,所述第二分配单元具体用于:当所述判断单元确定所述第一worker节点不满足处理所述目标区块的预设条件时,获取所有的待完成任务数低于所述任务数阈值的worker节点作为预选worker节点;从所述预选worker节点中随机选取一个作为第二worker节点;将所述区块号的地址位改为第二IP地址,所述第二IP地址为所述第二worker节点的IP地址。将所述目标区块分配给所述第二worker节点进行处理。可选的,所述miner节点还包括第二更新单元,所述第二更新单元具体用于:当接收到所述第二worker节点发送的与所述目标区块对应的阶段变更通知时,更新所述区块号的阶段位。可选的,所述miner节点还包括命名单元,所述命名单元用于:根据预设命名规则生成目标区块的区块号;将所述区块号加入任务队列。可选的,所述命名单元具体用于:根据历史任务分配记录,获取权值最高的worker节点的IP地址;根据目标区块的上一个区块的唯一标识生成所述目标区块的唯一标识;根据所述IP地址、所述目标区块的唯一标识生成所述目标区块的区块号;将所述区块号加入任务队列。本申请实施例第三方面提供了一种miner节点,包括:处理器、存储器、输入输出单元、总线;所述处理器与所述存储器、所述输入输出单元以及所述总线相连;所述处理器具体执行如下操作:从任务队列获取目标区块的区块号,所述区块号包括标识位、地址位以及阶段位,所述标识位保存所述目标区块的唯一标识,所述地址位保存有与所述miner节点相关联的worker节点的互联网协议IP地址,所述阶段位保存所述目标区块的阶段信息;对所述区块本文档来自技高网...

【技术保护点】
1.一种区块链任务调度的方法,应用于miner节点,其特征在于,包括:/n从任务队列获取目标区块的区块号,所述区块号包括标识位、地址位以及阶段位,所述标识位保存所述目标区块的唯一标识,所述地址位保存有与所述miner节点相关联的worker节点的互联网协议IP地址,所述阶段位保存所述目标区块的阶段信息;/n对所述区块号进行解析,得到第一IP地址;/n根据所述第一IP地址确定第一worker节点;/n判断所述第一worker节点是否满足处理所述目标区块的预设条件;/n若是,则将所述目标区块分配给所述第一worker节点进行处理。/n

【技术特征摘要】
1.一种区块链任务调度的方法,应用于miner节点,其特征在于,包括:
从任务队列获取目标区块的区块号,所述区块号包括标识位、地址位以及阶段位,所述标识位保存所述目标区块的唯一标识,所述地址位保存有与所述miner节点相关联的worker节点的互联网协议IP地址,所述阶段位保存所述目标区块的阶段信息;
对所述区块号进行解析,得到第一IP地址;
根据所述第一IP地址确定第一worker节点;
判断所述第一worker节点是否满足处理所述目标区块的预设条件;
若是,则将所述目标区块分配给所述第一worker节点进行处理。


2.根据权利要求1所述的方法,其特征在于,所述判断所述第一worker节点是否满足处理所述目标区块的预设条件包括:
判断所述第一worker节点的待完成任务数是否小于任务数阈值;
若是,则确定所述第一worker节点满足处理所述目标区块的预设条件。


3.根据权利要求2所述的方法,其特征在于,所述判断所述第一worker节点的待完成任务数是否小于任务数阈值之后,所述方法还包括:
若否,则获取所有的待完成任务数低于所述任务数阈值的worker节点作为预选worker节点;
从所述预选worker节点中随机选取一个作为第二worker节点;
将所述目标区块分配给所述第二worker节点进行处理。


4.根据权利要求3所述的方法,其特征在于,所述从所述预选worker节点中随机选取一个作为第二worker节点之后,所述将所述目标区块分配给所述第二worker节点进行处理之前,所述方法还包括:
将所述区块号的地址位改为第二IP地址,所述第二IP地址为所述第二worker节点的IP地址。


5.根据权利要求3所述的方法,其特征在于,所述将所述目标区块分配给所述第二worker节点进行处理之后,所述方法还包括:
当接收到所述第二worker节点发送的与所述目标区块对应的阶段变更通知时,更新所述区块号的阶段位。


6.根据权利要求1至5中任一项所述的方法,...

【专利技术属性】
技术研发人员:杨高赟
申请(专利权)人:河北蜂之巢互联网技术有限公司
类型:发明
国别省市:河北;13

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1