用于区块链的共识方法、装置、计算机系统和介质制造方法及图纸

技术编号:26733866 阅读:15 留言:0更新日期:2020-12-15 14:40
本公开提供了一种用于区块链的共识方法,包括:响应于当前任务处理请求,根据区块链中N个计算节点中每一个计算节点的当前有效权重确定目标计算节点,其中,每一个计算节点的当前有效权重是根据计算节点自身的初始权重以及与在当前任务处理请求之前的历史任务处理请求对应的历史有效权重确定的;通过目标计算节点处理任务;在任务处理完成后,通过目标计算节点将任务的处理结果发送给N个计算节点中的其他每一个计算节点,以使其他每一个计算节点进行数据同步。本公开还提供了一种用于区块链的共识装置、计算机系统和介质。

【技术实现步骤摘要】
用于区块链的共识方法、装置、计算机系统和介质
本公开涉及区块链
,更具体地,涉及一种用于区块链的共识方法、装置、计算机系统和介质。
技术介绍
分布式网络中的共识是为了达成统一事务,简而言之就是在一个群体中的所有成员在某一方面达成的一致性意见。区块链目前是分布式网络的典型应用,大多数共识算法也服务于区块链相关项目,而这些共识算法的机制要么依赖计算机的算力性能,要么依赖在某一分布式网络中所拥有虚拟资产的基数,要么是人为设定或将网络中的节点切割成共识节点和存储节点。但是,依赖算力的共识有一定的公平性,然而对社会资源浪费严重,且没有可证明的实际价值。依赖虚拟资产基数的共识则有损公平性,话语权更多的掌握在拥有更多资源的一方。依赖人为设定或切割分布式节点类型的共识本身是基于分布式网络整体效率考虑的,在公平性和效率上需要进行权衡,很大程度无法确保网络的可信度。
技术实现思路
有鉴于此,本公开提供了一种用于区块链的共识方法、装置、计算机系统和介质。本公开的一个方面提供了一种用于区块链的共识方法,包括:响应于当前任务处理请求,根据区块链中N个计算节点中每一个计算节点的当前有效权重确定目标计算节点,其中,所述每一个计算节点的当前有效权重是根据所述计算节点自身的初始权重以及与在所述当前任务处理请求之前的历史任务处理请求对应的历史有效权重确定的,其中,N为大于1的整数;通过所述目标计算节点处理所述任务;在所述任务处理完成后,通过所述目标计算节点将所述任务的处理结果发送给所述N个计算节点中的其他每一个计算节点,以使所述其他每一个计算节点进行数据同步。根据本公开的实施例,根据区块链中N个计算节点中每一个计算节点的当前有效权重确定目标计算节点包括:获取区块链中N个计算节点的轮询共识表,其中,所述轮询共识表包括N个计算节点中的每一个计算节点的初始权重、与每一次历史任务处理请求对应的历史有效权重、以及与当前任务处理请求对应的当前有效权重;确定所述轮询共识表中当前有效权重最大的计算节点为所述目标计算节点。根据本公开的实施例,所述方法还包括:更新所述轮询共识表中N个计算节点中的每一个计算节点的当前有效权重,得到更新后的所述轮询共识表;将更新后的所述轮询共识表发送给所述N个计算节点中的其他每一个计算节点,以使所述其他每一个计算节点同步所述更新后的轮询共识表。根据本公开的实施例,更新所述轮询共识表中N个计算节点中的每一个计算节点的当前有效权重包括:针对所述N个计算节点中的目标计算节点,根据所述N个计算节点的初始权重之和以及所述目标计算节点自身的初始权重更新所述当前有效权重;针对所述N个计算节点中的除所述目标计算节点之外的其他每一个计算节点,根据所述计算节点自身的初始权重更新所述当前有效权重。根据本公开的实施例,针对所述N个计算节点中的目标计算节点,根据所述N个计算节点的初始权重之和以及所述目标计算节点自身的初始权重更新所述当前有效权重包括:将所述目标计算节点的当前有效权重减去所述N个计算节点的初始权重之和,再加上所述目标计算节点自身的初始权重,得到更新后的所述目标计算节点的有效权重。根据本公开的实施例,针对所述N个计算节点中的除所述目标计算节点之外的其他每一个计算节点,根据所述计算节点自身的初始权重更新所述当前有效权重包括:将所述计算节点的当前有效权重加上自身的初始权重,得到更新后的所述计算节点的有效权重。根据本公开的实施例,所述方法还包括:在响应所述历史任务处理请求之前,初始化所述N个计算节点中的每一个计算节点的有效权重为所述计算节点的初始权重。本公开的另一个方面提供了一种用于区块链的共识装置,包括:确定模块,用于响应于当前任务处理请求,根据区块链中N个计算节点中每一个计算节点的当前有效权重确定目标计算节点,其中,所述每一个计算节点的当前有效权重是根据所述计算节点自身的初始权重以及与在所述当前任务处理请求之前的历史任务处理请求对应的历史有效权重确定的,其中,N为大于1的整数;第一处理模块,用于通过所述目标计算节点处理所述任务;第二处理模块,用于在所述任务处理完成后,通过所述目标计算节点将所述任务的处理结果发送给所述N个计算节点中的其他每一个计算节点,以使所述其他每一个计算节点进行数据同步。本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。本公开的另一方面提供了一种计算机程序,所述计算机程序包括计算机可执行指令,所述指令在被执行时用于实现如上所述的方法。本公开的另一方面提供了一种计算机系统,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上所述的方法。附图说明通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:图1示意性示出了可以应用本公开实施例的用于区块链的共识方法和装置的示例性系统架构;图2示意性示出了根据本公开实施例的用于区块链的共识方法的流程图;图3示意性示出了根据本公开实施例的基于平滑加权轮询算法进行调度的方法的流程图;图4示意性示出了根据本公开实施例的确定目标计算节点的方法的流程图;图5示意性示出了根据本公开实施例的更新轮询共识表的方法的流程图;图6示意性示出了根据本公开实施例的更新每一个计算节点的当前有效权重的方法的流程图;图7示意性示出了根据本公开另一实施例的用于区块链的共识方法的流程图;图8示意性示出了根据本公开的实施例的用于区块链的共识装置的框图;以及图9示意性示出了根据本公开实施例的计算机系统的框图。具体实施方式以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的系统等)。本文档来自技高网...

【技术保护点】
1.一种用于区块链的共识方法,包括:/n响应于当前任务处理请求,根据区块链中N个计算节点中每一个计算节点的当前有效权重确定目标计算节点,其中,所述每一个计算节点的当前有效权重是根据所述计算节点自身的初始权重以及与在所述当前任务处理请求之前的历史任务处理请求对应的历史有效权重确定的,其中,N为大于1的整数;/n通过所述目标计算节点处理所述任务;以及/n在所述任务处理完成后,通过所述目标计算节点将所述任务的处理结果发送给所述N个计算节点中的其他每一个计算节点,以使所述其他每一个计算节点进行数据同步。/n

【技术特征摘要】
1.一种用于区块链的共识方法,包括:
响应于当前任务处理请求,根据区块链中N个计算节点中每一个计算节点的当前有效权重确定目标计算节点,其中,所述每一个计算节点的当前有效权重是根据所述计算节点自身的初始权重以及与在所述当前任务处理请求之前的历史任务处理请求对应的历史有效权重确定的,其中,N为大于1的整数;
通过所述目标计算节点处理所述任务;以及
在所述任务处理完成后,通过所述目标计算节点将所述任务的处理结果发送给所述N个计算节点中的其他每一个计算节点,以使所述其他每一个计算节点进行数据同步。


2.根据权利要求1所述的方法,其中,根据区块链中N个计算节点中每一个计算节点的当前有效权重确定目标计算节点包括:
获取区块链中N个计算节点的轮询共识表,其中,所述轮询共识表包括N个计算节点中的每一个计算节点的初始权重、与每一次历史任务处理请求对应的历史有效权重以及与当前任务处理请求对应的当前有效权重;以及
确定所述轮询共识表中当前有效权重最大的计算节点为所述目标计算节点。


3.根据权利要求2所述的方法,在所述任务处理完成后,还包括:
更新所述轮询共识表中N个计算节点中的每一个计算节点的当前有效权重,得到更新后的所述轮询共识表;以及
将更新后的所述轮询共识表发送给所述N个计算节点中的其他每一个计算节点,以使所述其他每一个计算节点同步所述更新后的轮询共识表。


4.根据权利要求3所述的方法,其中,更新所述轮询共识表中N个计算节点中的每一个计算节点的当前有效权重包括:
针对所述N个计算节点中的目标计算节点,根据所述N个计算节点的初始权重之和以及所述目标计算节点自身的初始权重更新所述当前有效权重;以及
针对所述N个计算节点中的除所述目标计算节点之外的其他每一个计算节点,根据所述计算节点自身的初始权重更新所述当前有效权重。


5.根据权利要求4所述的方法,其中,
针对...

【专利技术属性】
技术研发人员:杨毅郑三宝马丽忠肖凯
申请(专利权)人:工银科技有限公司
类型:发明
国别省市:河北;13

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

1