交易处理方法、装置及电子设备、存储介质制造方法及图纸

技术编号:37822474 阅读:14 留言:0更新日期:2023-06-09 09:59
本申请提供一种交易处理方法、装置及电子设备、存储介质。该方法应用于运用共识算法的系统,该方法包括:接收待处理交易,并将待处理交易分配至已创建的共识集群中的一个共识分片,以触发所述一个共识分片中一个共识集中的共识主节点处理所述待处理交易,并生成共识决议;其中,所述共识集群包括多个相互独立的共识分片,每个共识分片包括多个共识集,每个共识集具有一个共识主节点和至少一个备份节点;执行所述共识决议,并存储所述共识决议的执行结果,以完成所述待处理交易的处理。本申请的方法可以解决如何保障基于共识算法的系统的高可用性的同时,避免系统资源浪费和提高系统的共识效率的问题。的共识效率的问题。的共识效率的问题。

【技术实现步骤摘要】
交易处理方法、装置及电子设备、存储介质


[0001]本申请涉及基于共识算法的交易处理技术,尤其涉及一种交易处理方法、装置及电子设备、存储介质。

技术介绍

[0002]随着金融领域的发展,业务需求也越来越高。为了满足业务需求,目前常使用分布式系统和联盟区块链系统对业务需求进行处理。为了满足业务的高性能需求,当前的分布式系统和联盟区块链系统一般采用基于分布式一致性原理的共识算法(主要包括PBFT共识算法和Raft共识算法)。这些共识算法具有交易吞吐量高、交易确认时延低达秒级、可确保输出结果的最终一致性等优点。
[0003]但这些共识算法的故障容错率均不高,这就意味着为了保证基于共识算法的系统的高可用性,必须为系统部署足够多的共识节点。因为所有共识节点均要参与共识流程,所以随着系统可用性的增加,共识节点数目会不断增加,从而故障共识节点的数目不断增加,这就会导致共识系统的共识效率会越来越低。除此之外,每个共识节点均维护一份数据副本,而一般来说仅需维护3个数据副本即可保证数据的高可用性,因此随着系统可用性的增加,系统资源的浪费也会越来越严重。
[0004]因此,如何保障基于共识算法的系统的高可用性的同时,避免系统资源浪费和提高系统的共识效率,仍然是需要考虑的。

技术实现思路

[0005]本申请提供一种交易处理方法、装置及电子设备、存储介质,用以解决如何保障基于共识算法的系统的高可用性的同时,避免系统资源浪费和提高系统的共识效率的问题。
[0006]一方面,本申请提供一种交易处理方法,应用于运用共识算法的系统,所述方法包括:
[0007]接收待处理交易,并将待处理交易分配至已创建的共识集群中的一个共识分片,以触发所述一个共识分片中一个共识集中的共识主节点处理所述待处理交易,并生成共识决议;其中,所述共识集群包括多个相互独立的共识分片,每个共识分片包括多个共识集,每个共识集具有一个共识主节点和至少一个备份节点;
[0008]执行所述共识决议,并存储所述共识决议的执行结果,以完成所述待处理交易的处理。
[0009]其中一个实施例中,所述系统还包括选主集群,所述共识集群的创建方式包括:
[0010]获取共识分片的创建请求,所述创建请求至少携带需创建的共识分片的名称、需创建的共识分片所包含的共识集的数目;
[0011]根据所述共识分片的创建请求,查询选主集群中是否存在所述需创建的共识分片的名称;当不存在时,根据所述创建请求携带的需创建的共识分片的名称、需创建的共识分片所包含的共识集的数目,在所述共识集群中创建共识分片,以得到创建的所述共识集群。
[0012]其中一个实施例中,所述根据所述创建请求携带的需创建的共识分片的名称、需创建的共识分片所包含的共识集的数目,在所述共识集群中创建共识分片包括:
[0013]根据所述创建请求携带的需创建的共识分片的名称、需创建的共识分片所包含的共识集的数目,生成共识分片的键值对;
[0014]将共识分片的键值对插入所述选主集群,以在所述共识集群中创建共识分片。
[0015]其中一个实施例中,所述将共识分片的键值对插入所述选主集群,以在所述共识集群中创建共识分片包括:
[0016]将共识分片的键值对插入所述选主集群,并触发所述选主集群接收系统中的一个共识节点发送的主节点申请信息;
[0017]触发所述选主集群响应所述主节点申请信息,向共识分片的键值对中插入所述一个共识节点的编号信息,以将所述一个共识节点分配为共识分片中待分配共识集的共识主节点,其中,所述待分配共识集指的是不具有共识主节点的共识集;
[0018]为共识分片中具有共识主节点中的每个共识集分配至少一个共识节点为共识集的至少一个备份节点,共识集中的共识主节点与备份节点不同;
[0019]当共识分片中的每个共识集均分配有一个共识主节点和至少一个备份节点时,完成在所述共识集群中创建共识分片。
[0020]其中一个实施例中,所述主节点申请信息包含租约申请信息和所述一个共识节点的编号信息;所述一个共识节点被分配为共识主节点后,定时向所述选主集群发送租约申请信息;所述选主集群响应所述租约申请信息,维持所述一个共识节点为共识主节点;
[0021]所述方法还包括:
[0022]当所述选主集群超过预设时长未接收到所述一个共识节点发送的租约申请信息时,触发所述选主集群接收共识集中的备份节点发送的主节点申请信息;
[0023]更新以所述一个共识节点为共识主节点的共识集为待分配共识集,并分配所述备份节点为待分配共识集的共识主节点。
[0024]其中一个实施例中,所述系统中的每个共识节点均订阅所述选主集群记录的每个共识分片的键值信息,当任意一个共识分片的键值信息更新时,每个共识节点向所述选主集群发送所述主节点申请信息。
[0025]其中一个实施例中,所述创建共识集群后,所述方法还包括:
[0026]当接收到新增共识集指示时,若基于所述选主集群中的共识集信息确定新增共识集未创建过,则,
[0027]根据新增共识集指示所携带的新增共识集信息和所指示的目标共识分片,更新所述选主集群中的目标共识分片的键值信息,以在目标共识分片中增添所述新增共识集,其中,所述新增共识集包括至少一个共识集。
[0028]其中一个实施例中,还包括:
[0029]当接收到删除共识集指示时,若基于所述选主集群中的共识集信息确定删除共识集已创建过,则,
[0030]根据删除共识集指示所携带的删除共识集信息和所指示的目标共识分片,更新所述选主集群中的目标共识分片的键值信息,以在目标共识分片中剔除所述删除共识集,其中,所述删除共识集包括至少一个共识集。
[0031]其中一个实施例中,所述根据删除共识集指示所携带的删除共识集信息和所指示的目标共识分片,更新所述选主集群中的目标共识分片的键值信息,以在目标共识分片中剔除所述删除共识集包括:
[0032]根据删除共识集指示所携带的删除共识集信息和所指示的目标共识分片,确定删除共识集的共识主节点;
[0033]当超过预设时长未接收到删除共识集的共识主节点发送的租约申请信息时,从所述选主集群中目标共识分片的键值信息中筛选出删除共识集的键值信息,并删除所述删除共识集的键值信息,以在目标共识分片中剔除所述删除共识集。
[0034]其中一个实施例中,所述方法还包括:
[0035]当接收到删除共识分片指示时,若基于所述选主集群中的共识分片信息确定删除共识分片已创建过,则,
[0036]根据删除共识分片指示所携带的删除共识分片信息,从所述选主集群中的目标共识分片的键值信息中剔除所述删除共识分片的键值信息,并从所述选主集群中的目标共识分片的键值信息中剔除所述删除共识分片对应的每个共识集的键值信息。
[0037]其中一个实施例中,所述系统还包括交易接收模块,所述交易接收模块包括多个交易池分片,所述接收待处理交易,将待处理交易分配至一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种交易处理方法,其特征在于,应用于运用共识算法的系统,所述方法包括:接收待处理交易,并将待处理交易分配至已创建的共识集群中的一个共识分片,以触发所述一个共识分片中一个共识集中的共识主节点处理所述待处理交易,并生成共识决议;其中,所述共识集群包括多个相互独立的共识分片,每个共识分片包括多个共识集,每个共识集具有一个共识主节点和至少一个备份节点;执行所述共识决议,并存储所述共识决议的执行结果,以完成所述待处理交易的处理。2.根据权利要求1所述的方法,其特征在于,所述系统还包括选主集群,所述共识集群的创建方式包括:获取共识分片的创建请求,所述创建请求至少携带需创建的共识分片的名称、需创建的共识分片所包含的共识集的数目;根据所述共识分片的创建请求,查询选主集群中是否存在所述需创建的共识分片的名称;当不存在时,根据所述创建请求携带的需创建的共识分片的名称、需创建的共识分片所包含的共识集的数目,在所述共识集群中创建共识分片,以得到创建的所述共识集群。3.根据权利要求2所述的方法,其特征在于,所述根据所述创建请求携带的需创建的共识分片的名称、需创建的共识分片所包含的共识集的数目,在所述共识集群中创建共识分片包括:根据所述创建请求携带的需创建的共识分片的名称、需创建的共识分片所包含的共识集的数目,生成共识分片的键值对;将共识分片的键值对插入所述选主集群,以在所述共识集群中创建共识分片。4.根据权利要求3所述的方法,其特征在于,所述将共识分片的键值对插入所述选主集群,以在所述共识集群中创建共识分片包括:将共识分片的键值对插入所述选主集群,并触发所述选主集群接收系统中的一个共识节点发送的主节点申请信息;触发所述选主集群响应所述主节点申请信息,向共识分片的键值对中插入所述一个共识节点的编号信息,以将所述一个共识节点分配为共识分片中待分配共识集的共识主节点,其中,所述待分配共识集指的是不具有共识主节点的共识集;为共识分片中具有共识主节点中的每个共识集分配至少一个共识节点为共识集的至少一个备份节点,共识集中的共识主节点与备份节点不同;当共识分片中的每个共识集均分配有一个共识主节点和至少一个备份节点时,完成在所述共识集群中创建共识分片。5.根据权利要求4所述的方法,其特征在于,所述主节点申请信息包含租约申请信息和所述一个共识节点的编号信息;所述一个共识节点被分配为共识主节点后,定时向所述选主集群发送租约申请信息;所述选主集群响应所述租约申请信息,维持所述一个共识节点为共识主节点;所述方法还包括:当所述选主集群超过预设时长未接收到所述一个共识节点发送的租约申请信息时,触发所述选主集群接收共识集中的备份节点发送的主节点申请信息;更新以所述一个共识节点为共识主节点的共识集为待分配共识集,并分配所述备份节点为待分配共识集的共识主节点。
6.根据权利要求4所述的方法,其特征在于,所述系统中的每个共识节点均订阅所述选主集群记录的每个共识分片的键值信息,当任意一个共识分片的键值信息更新时,每个共识节点向所述选主集群发送所述主节点申请信息。7.根据权利要求2

6任一项所述的方法,其特征在于,所述创建共识集群后,所述方法还包括:当接收到新增共识集指示时,若基于所述选主集群中的共识集信息确定新增共识集未创建过,则,根据新增共识集指示所携带的新增...

【专利技术属性】
技术研发人员:陈宇杰李辉忠张开翔范瑞彬
申请(专利权)人:深圳前海微众银行股份有限公司
类型:发明
国别省市:

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

1