【技术实现步骤摘要】
一种共识流程恢复方法及相关节点
本专利技术涉及大数据
,尤其涉及一种共识流程恢复方法及相关节点。
技术介绍
区块链是一种将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。现有执行区块链方案的节点集群在解决节点之间协商、决策如何生成新区块的问题时,使用实用拜占庭容错(practicalbyzantinefaulttolerance,PBFT)算法进行共识,共识效率是区块链对外提供服务的核心能力。PBFT算法的核心理论是n>=3f+1,其中,n是节点集群中的节点总数,f是允许出现故障的节点的最大数。即当出现拜占庭容错(如发送恶意错误信息)的节点不超过f个时,这节点集群中的没有出现拜占庭容错的其他节点最终都可以的得到正确的共识结果,也即是说,每个没有出现拜占庭容错的节点在收到2f+1条正确的消息后即可得出正确的共识结果。该节点集群中包括一个主节点(primarynode),除该主节点之外的节点为从节点(backupnode),主节点在共识过程中承担了更多的任务,例如 ...
【技术保护点】
1.一种共识流程恢复方法,其特征在于,应用于节点集群,所述节点集群包含多个节点,所述多个节点共同运行多个实例,其中所述多个实例中的每个实例由所述多个节点共同运行,并且所述多个实例中存在一个主实例和一个或多个从实例;针对每个实例,所述多个节点中存在一个节点作为该实例的主节点,其余的节点作为该实例的从节点;所述多个实例对应的多个主节点分别为不同的节点,所述方法包括:/n所述多个节点中的一个或多个节点从所述一个或多个从实例中确定目标实例,所述目标实例的吞吐量比所述主实例的吞吐量高;/n第一节点与各个第二节点达成共识,以将所述目标实例替换所述主实例成为新的主实例,所述第二节点为所述 ...
【技术特征摘要】
1.一种共识流程恢复方法,其特征在于,应用于节点集群,所述节点集群包含多个节点,所述多个节点共同运行多个实例,其中所述多个实例中的每个实例由所述多个节点共同运行,并且所述多个实例中存在一个主实例和一个或多个从实例;针对每个实例,所述多个节点中存在一个节点作为该实例的主节点,其余的节点作为该实例的从节点;所述多个实例对应的多个主节点分别为不同的节点,所述方法包括:
所述多个节点中的一个或多个节点从所述一个或多个从实例中确定目标实例,所述目标实例的吞吐量比所述主实例的吞吐量高;
第一节点与各个第二节点达成共识,以将所述目标实例替换所述主实例成为新的主实例,所述第二节点为所述目标实例对应的从节点,所述第一节点为所述目标实例对应的主节点。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述多个节点中的一个或多个节点检测所述一个或多个从实例的吞吐量;
对应的,所述多个节点中的一个或多个节点从所述一个或多个从实例中确定目标实例为:
所述多个节点中的一个或多个节点根据所述一个或多个从实例的吞吐量从所述一个或多个从实例中确定所述目标实例。
3.根据权利要求1或2所述的方法,其特征在于,所述每个实例均用于对业务请求进行处理,所述方法还包括:
所述第一节点向每一个所述第二节点发送所述业务请求;
所述第一节点接收所述第二节点返回的第一验证信息,所述第一验证信息中包括所述第二节点的签名,所述第一验证信息表示所述第二节点对所述业务请求验证通过;
若所述第一节点接收到的所述第一验证信息的数量超过第二预设阈值,所述第一节点执行所述业务请求;
所述第一节点向每一个所述第二节点发送第一确认信息,所述第一确认信息包括所述业务请求和所述第一节点接收到的所有的所述第一验证信息中的所述第二节点的签名;所述第一确认信息用于使得所述第二节点执行所述业务请求。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第一节点与各个第二节点达成共识,以将所述目标实例替换所述主实例成为新的主实例,包括:
所述第一节点向每一个所述第二节点发送替换请求,所述替换请求用于请求将所述目标实例替换所述主实例成为新的主实例;
所述第一节点接收所述第二节点返回的第二验证信息,所述第二验证信息中包括所述第二节点的签名,所述第二验证信息表示所述第二节点对所述替换请求验证通过;
若所述第一节点接收到的所述第二验证信息的数量超过第三预设阈值,所述第一节点将所述目标实例替换所述主实例成为新的主实例;
所述第一节点向每一个所述第二节点发送第二确认信息,所述第二确认信息包括所述第一节点接收到的所有的所述第二验证信息中的所述第二节点的签名;所述第二确认信息用于指示每一个所述第二节点执行所述替换请求,将所述目标实例替换所述主实例成为新的主实例。
5.根据权利要求1-4任一项所述的方法,其特征在于,运行所述多个实例中任一实例的所述多个从节点中的部分从节点为所述任一实例的备用主节点,所述任一个实例的备用主节点用于代替所述任一个实例的主节点成为所述任一个实例的新的主节点。
6.根据权利要求5所述的方法,其特征在于,所述多个实例中任意两个实例的备用主节点之间不重复。
7.根据权利要求5或6所述的方法,其特征在于,所述任一个实例的各个备用主节点之间存在不同的优先级;所述任一个实例的备用主节点用于代替所述任一个实例的主节点成为所述任一个实例的新的主节点,具体为:
按照所述优先级,所述任一个实例的各个备用主节点中优先级最高的备用主节点用于代替所述任一个实例的主节点成为所述任一个实例的新的主节点。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述多个实例中实例的数量L与所述节点集群中的节点数量N之间存在如下关系:N为大于或等于3的整数。
9.一种共识方法,其特征在于,所述方法包括:
第一节点向每一个第二节点发送业务请求;所述第一节点为运行一个实例的主节点,所述第二节点为运行所述一个实例的从节点;
所述第一节点接收所述第二节点返回的第一验证信息,所述第一验证信息中包括所述第二节点的签名,所述第一验证信息表示所述第二节点对所述业务请求验证通过;
若所述第一节点接收到的所述第一验证信息的数量超过第二预设阈值,所述第一节点执行所述业务请求;
所述第一节点向每一个所述第二节点发送第一确认信息,所述第一确认信息包括所述业务请求和所述第一节点接收到的所有的所述第一验证信息中的所述第二节点的签名;所述第一确认信息用于使得所述第二...
【专利技术属性】
技术研发人员:丁健,刘勋,曹朝,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。