基于区块链的共识方法、装置、主节点设备及从节点设备制造方法及图纸

技术编号:25695377 阅读:22 留言:0更新日期:2020-09-18 21:06
本申请适用于区块链领域,提供了一种基于区块链的共识方法、装置、主节点设备及从节点设备,该方法包括:根据客户端发送的配置交易请求生成配置交易区块。将配置交易区块发送给每个从节点。若在第一预设时段内,接收到每个从节点返回的投票结果数量小于预设阈值,则继续接收每个从节点返回的投票结果,直到第二预设时段结束。若在第二预设时段内,接收到每个从节点返回的投票结果数量大于或等于预设阈值,则向从节点发送出块信息。响应客户端的配置交易请求,并在主节点上配置该配置交易。使得当网络性能不佳时,可以有更多的时间接收投票结果。从而减少了因网络性能不佳,收集不到足够投票结果而导致的共识失败,提高了系统的稳定性。

【技术实现步骤摘要】
基于区块链的共识方法、装置、主节点设备及从节点设备
本申请属于区块链领域,尤其涉及一种基于区块链的共识方法、装置、主节点设备及从节点设备。
技术介绍
如今,在进行配置交易时,经常会用到区块链网络。在应用区块链网络时,需要通过共识算法进行共识,以保证区块链中每个节点的数据包能够充分同步。通常可以使用基于主节点的共识算法进行共识。如通过共识算法,从多个节点中选出一个主节点,主节点用于在下一轮共识中进行区块打包。现有技术中,在出现共识失败时,是通过切换主节点来解决共识失败的问题。但是,共识失败可能是由于网络性能导致的同步问题引起的。此时,仅仅切换主节点无法妥善解决共识失败的问题。
技术实现思路
本申请实施例提供了基于区块链的共识方法、装置、主节点设备及从节点设备,可以解决由网络性能导致的共识失败的问题。第一方面,本申请实施例提供了一种基于区块链的共识方法,应用于主节点,包括:根据客户端发送的配置交易请求生成配置交易区块。将配置交易区块发送给每个从节点。若在第一预设时段内,接收到每个从节点返回的投票结果数量小于预设阈值,则继续接收每个从节点返回的投票结果,直到第二预设时段结束,其中,投票结果用于指示从节点接受配置交易区块中的配置交易请求。若在第二预设时段内,接收到每个从节点返回的投票结果数量大于或等于预设阈值,则向从节点发送出块信息。响应客户端的配置交易请求,并在主节点上配置该配置交易。本申请实施例与现有技术相比存在的有益效果是:通过在第一预设时段和第二预设时段内持续接收从节点发送的投票结果,使得当网络性能不佳时,可以有更多的时间接收投票结果。从而减少了因网络性能不佳,收集不到足够投票结果而导致的共识失败,提高了系统的稳定性。第二方面,本申请实施例还提供了一种基于区块链的共识方法,应用于从节点,包括:接收主节点发送的配置交易区块,配置交易区块是主节点根据客户端发送的配置交易请求生成的。校验配置交易区块的合法性,若合法,则接受配置交易区块中的配置交易请求。向主节点发送投票结果,投票结果用于指示从节点接受配置交易区块中的配置交易请求。若接收到主节点发送的出块信息,则在从节点上配置该配置交易。一些实施方式中,在向主节点发送投票结果之后,还包括:若在第三预设时段内,未接收到主节点发送的出块信息,则继续接收出块信息,直到第四预设时段结束。若在第四预设时段内,未接收到出块信息,则向除当前从节点外的每个从节点发送主节点切换请求。一些实施方式中,该方法还包括:接收主节点切换请求。若接收到出块信息,则忽略主节点切换请求。若在第四预设时段内,未接收到出块信息,则根据主节点切换请求在多个从节点中确定一个从节点作为主节点。第三方面,本申请实施例还提供了一种基于区块链的共识装置,应用于主节点,包括:生成模块,用于根据客户端发送的配置交易请求生成配置交易区块。第一发送模块,用于将配置交易区块发送给每个从节点。共识模块,用于若在第一预设时段内,接收到每个从节点返回的投票结果数量小于预设阈值,则继续接收每个从节点返回的投票结果,直到第二预设时段结束,其中,投票结果用于指示从节点接受配置交易区块中的配置交易请求。共识模块,还用于若在第二预设时段内,接收到每个从节点返回的投票结果数量大于或等于预设阈值,则向从节点发送出块信息。响应模块,用于响应客户端的配置交易请求,并在主节点上配置该配置交易。第四方面,本申请实施例还提供了一种基于区块链的共识装置,应用于从节点,包括:接收模块,用于接收主节点发送的配置交易区块,配置交易区块是主节点根据客户端发送的配置交易请求生成的。校验模块,用于校验配置交易区块的合法性,若合法,则接受配置交易区块中的配置交易请求。第二发送模块,用于向主节点发送投票结果,投票结果用于指示从节点接受配置交易区块中的配置交易请求。接收模块,还用于若接收到主节点发送的出块信息,则在从节点上配置该配置交易。一些实施方式中,接收模块,还用于若在第三预设时段内,未接收到主节点发送的出块信息,则继续接收出块信息,直到第四预设时段结束。第二发送模块,还用于若在第四预设时段内,未接收到出块信息,则向除当前从节点外的每个从节点发送主节点切换请求。一些实施方式中,接收模块,还用于接收主节点切换请求。装置还包括切换模块,用于若接收到出块信息,则忽略主节点切换请求。切换模块,还用于若在第四预设时段内,未接收到出块信息,则根据主节点切换请求在多个从节点中确定一个从节点作为主节点。第五方面,本申请实施例提供了一种主节点设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,其特征在于,处理器执行计算机程序时实现第一方面提供的方法。第六方面,本申请实施例提供了一种从节点设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,其特征在于,处理器执行计算机程序时实现第二方面提供的方法。第七方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现可实现上述第一方面提供的方法。第八方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现可实现上述第二方面提供的方法。第九方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面提供的方法。第九方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第二方面提供的方法。可以理解的是,上述第二方面至第十方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是基于区块链的共识方法的应用场景示意图;图2是基于区块链的共识方法的信令示意图;图3是本申请一实施例提供的共识方法的流程示意图;图4是本申请另一实施例提供的共识方法的流程示意图;图5是本申请一实施例提供的共识方法的信令示意图;图6是本申请另一实施例提供的共识方法的流程示意图;图7是本申请另一实施例提供的共识方法的流程示意图;图8是本申请另一实施例提供的共识方法的信令示意图;图9是本申请一实施例提供的基于区块链的共识装置的结构示意图;图10是本申请一实施例提供的基于区块链的共识装置的结构示意图;图11是本申请另一实施例提供的基于区块链的共识装置的结构示意图;图12是本申请实施例提供的主节点设备的结构示意图;图13是本申请实施例提供的从节点设备的结构示意图。具体实施方式以下描述中,为了说明而不是为了限定,本文档来自技高网...

【技术保护点】
1.一种基于区块链的共识方法,应用于主节点,其特征在于,包括:/n根据客户端发送的配置交易请求生成配置交易区块;/n将所述配置交易区块发送给每个从节点;/n若在第一预设时段内,接收到每个所述从节点返回的投票结果数量小于预设阈值,则继续接收每个所述从节点返回的投票结果,直到第二预设时段结束,其中,所述投票结果用于指示所述从节点接受所述配置交易区块中的配置交易请求;/n若在第二预设时段内,接收到每个所述从节点返回的投票结果数量大于或等于所述预设阈值,则向所述从节点发送出块信息;/n响应所述客户端的配置交易请求,并在主节点上配置所述配置交易。/n

【技术特征摘要】
1.一种基于区块链的共识方法,应用于主节点,其特征在于,包括:
根据客户端发送的配置交易请求生成配置交易区块;
将所述配置交易区块发送给每个从节点;
若在第一预设时段内,接收到每个所述从节点返回的投票结果数量小于预设阈值,则继续接收每个所述从节点返回的投票结果,直到第二预设时段结束,其中,所述投票结果用于指示所述从节点接受所述配置交易区块中的配置交易请求;
若在第二预设时段内,接收到每个所述从节点返回的投票结果数量大于或等于所述预设阈值,则向所述从节点发送出块信息;
响应所述客户端的配置交易请求,并在主节点上配置所述配置交易。


2.一种基于区块链的共识方法,应用于从节点,其特征在于,包括:
接收主节点发送的配置交易区块,所述配置交易区块是主节点根据客户端发送的配置交易请求生成的;
校验所述配置交易区块的合法性,若合法,则接受所述配置交易区块中的配置交易请求;
向所述主节点发送投票结果,所述投票结果用于指示所述从节点接受所述配置交易区块中的配置交易请求;
若接收到所述主节点发送的出块信息,则在从节点上配置所述配置交易。


3.根据权利要求2所述方法,其特征在于,在向所述主节点发送投票结果之后,还包括:
若在第三预设时段内,未接收到所述主节点发送的出块信息,则继续接收所述出块信息,直到第四预设时段结束;
若在第四预设时段内,未接收到所述出块信息,则向除当前从节点外的每个从节点发送主节点切换请求。


4.根据权利要求3所述方法,其特征在于,所述方法还包括:
接收所述主节点切换请求;
若接收到所述出块信息,则忽略所述主节点切换请求;
若在第四预设时段内,未接收到所述出块信息,则根据所述主节点切换请求在多个从节点中确定一个从节点作为所述主节点。


5.一种基于区块链的共识装置,应用于主节点,其特征在于,包括:
生成模块,用于根据客户端发送的配置交易请求生成配置交易区块;
第一发送模块,用于将所述配置交易区块发送给每个从节点;
共识模块,用于若在第一预设时段内,接收到每个所述从节点返回的投票结果数量小于...

【专利技术属性】
技术研发人员:陈志明姜鹏潘清雪
申请(专利权)人:中信银行股份有限公司
类型:发明
国别省市:北京;11

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

1