CN112181672B - 区块链数据的处理方法、区块链系统及计算机存储介质 - Google Patents
区块链数据的处理方法、区块链系统及计算机存储介质 Download PDFInfo
- Publication number
- CN112181672B CN112181672B CN201910599402.0A CN201910599402A CN112181672B CN 112181672 B CN112181672 B CN 112181672B CN 201910599402 A CN201910599402 A CN 201910599402A CN 112181672 B CN112181672 B CN 112181672B
- Authority
- CN
- China
- Prior art keywords
- information
- signing
- message middleware
- intelligent contract
- sorting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提供了一种区块链数据的处理方法、区块链系统及计算机存储介质。区块链数据的处理方法包括:通过多个第一消息中间件,接收区块链的多个接入节点分别投递的智能合约的签署信息;通过所述区块链的分拣节点,根据所述智能合约的标识信息,对所述多个第一消息中间件中的所述签署信息进行分拣;将分拣得到的所述签署信息投递至与所述智能合约的标识信息对应的第二消息中间件中,以通过所述第二消息中间件对所述签署信息进行归并。
Description
技术领域
本发明实施例涉及数据处理技术领域,尤其涉及一种区块链数据的处理方法、区块链系统及计算机存储介质。
背景技术
在区块链中,智能合约需要多方达成共识才能完成签署。但是在签署过程中,会从多个区块链的节点中选择一个作为管理者,用来收集各个节点的签署信息,然后通过管理者将智能合约的签署过程转变为单机可以处理的问题。
然而,区块链中的数据大部分是实时产生实时提交的,当多个节点均向管理者提交签署信息时,尤其节点的数量较多时,可能会面临多对一的提交导致的排队、数据堵塞等问题,还可能导致宕机,进而使得区块链系统的性能变差。
发明内容
有鉴于此,本发明实施例提供一种区块链数据的处理方法、区块链系统及计算机存储介质,以解决上述问题。
根据本发明实施例的第一方面,提供了一种区块链数据的处理方法,其包括:通过多个第一消息中间件,接收区块链的多个接入节点分别投递的智能合约的签署信息;通过所述区块链的分拣节点,根据所述智能合约的标识信息,对所述多个第一消息中间件中的所述签署信息进行分拣;将分拣得到的所述签署信息投递至与所述智能合约的标识信息对应的第二消息中间件中,以通过所述第二消息中间件对所述签署信息进行归并。
根据本发明实施例的第二方面,提供了一种区块链系统,其包括:分拣节点、第二消息中间件、多个接入节点以及多个第一消息中间件,其中,所述多个接入节点,用于接收并投递智能合约的签署信息至对应的第一消息中间件;所述多个第一消息中间件,用于接收区块链的所述多个接入节点分别投递的所述签署信息;所述分拣节点,用于根据所述智能合约的标识信息,对所述多个第一消息中间件中的所述签署信息进行分拣,以及用于将分拣得到的所述签署信息投递至与所述智能合约的标识信息对应的第二消息中间件中;所述第二消息中间件,用于接收区块链的所述分拣节点投递的所述签署信息,以对所述签署信息进行归并。
根据本发明实施例的第三方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的区块链数据的处理方法。
根据本发明实施例提供的方案,通过多个第一消息中间件分别接收多个接入节点投递的智能合约的签署信息,从而可以避免多对一提交导致的数据堵塞等情况,提高了区块链系统的性能,并通过分拣节点可以根据智能合约的标识信息,对多个第一消息中间件中的签署信息进行分拣,并将分拣得到的签署信息投递至标识信息对应的第二消息中间件中,从而可以将同属于一个智能合约的签署信息投递至与该智能合约的标识信息对应的第二消息中间件中,即,通过第二消息中间件接收并存储该智能合约的所有签署信息,进而可以通过第二消息中间件对智能合约的签署信息进行归并;进行处理时,还可以直接从标识信息对应的第二消息中间件中拉取该智能合约的签署信息,方便了后续对签署信息的处理。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例一的一种区块链数据的处理方法的步骤流程图;
图2为本发明实施例二的一种区块链数据的处理方法的步骤流程图;
图3为本发明实施例三的一种区块链系统的结构框图;
图4a为本发明实施例四的一种区块链系统的结构框图;
图4b为本发明实施例四的一种区块链数据的处理方法的步骤流程图。
具体实施方式
为了使本领域的人员更好地理解本发明实施例中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明实施例保护的范围。
下面结合本发明实施例附图进一步说明本发明实施例具体实现。
实施例一
参照图1,示出了根据本发明实施例一的一种区块链数据的处理方法的步骤流程图。
本实施例提供的方法包括以下步骤:
步骤S102、通过多个第一消息中间件,接收区块链的多个接入节点分别投递的智能合约的签署信息。
消息中间件是利用高效可靠的消息传递机制进行平台无关的数据交流的一种技术,以采用消息队列的消息中间件为例,多个发送者将各自的数据投递至消息中间件,消息中间件将接收到的消息存储在消息队列中,多个消息的接收者可以消费消息中间件中存储的消息,从而通过消息中间件实现发送者和接收者之间的数据传送。其中,消息中间件可以采用Kafka、RabbitMQ、RocketMQ等形式,本实施例对消息中间件的具体形式不进行限定。
本实施例中,区块链系统中设置有第一消息中间件以及第二消息中间件,第一消息中间件以及第二消息中间件的形式可以相同也可以不同,例如两者可以均为kafka消息队列等;第一消息中间件可以部署在区块链系统的接入节点以及分拣节点之间,第二消息中间件可以部署在分拣节点之后;第一消息中间件以及第二消息中间件可以分别为一个消息中间集群的不同子集,也可以为两个或两个以上的独立消息中间件集群。
本实施例中,区块链的接入节点可以是直接与用户交互的区块链中的节点,以联盟区块链为例,某机构加入一个联盟区块链时,会在机构所在的客户端部署一个用于接入联盟区块链的节点,该节点即可认为是一个接入节点。另外需要说明的是,接入节点的数量可以根据实际需求进行增或减;用于接收接入节点发送的签署信息的第一消息中间件的数量可以根据接入节点的数量适应性地进行增或减,使得本实施例提供的区块链系统针对业务规模的伸缩性更好。
当进行智能合约的签署时,需要通过接入接点接收用户发送的签署信息,再由接入节点将签署信息投递至第一消息中间件中。
本实施例中,通过多个第一消息中间件,来分别接收多个接入节点投递的签署信息,从而可以防止多对一投递导致的排队、数据堵塞等问题,提高了区块链系统的性能。
当然,在实际使用时,一个消息中间件也可以同时接收两个或两个以上的接入节点投递的签署信息,一个接入节点也可以将不同的智能合约的签署信息投递至不同的第一消息中间件中,第一消息中间件的具体数量可以适应性设置,能够避免多对一投递导致的数据堵塞等问题即可。
步骤S104、通过所述区块链的分拣节点,根据所述智能合约的标识信息,对所述多个第一消息中间件中的所述签署信息进行分拣。
分拣节点可以为用于分拣第一消息中间件中的消息的节点,分拣节点可以从区块链的节点中按照预设规则进行选取获得,例如,将内存占用量较低的节点作为分拣节点等;可选地,分拣节点还可以按照设定的切换条件进行切换。当然,也可以将区块链中的部分节点一直作为分拣节点。另外需要说明的是,分拣节点的数量可以根据多个第一消息中间件中等待分拣的数据量进行适应性调整。
本实施例中,分拣节点从多个第一消息中间件中将含有智能合约标识信息的签署信息分拣出来,以完成对签署信息的分拣。其中,智能合约标识信息具体可以为智能合约的合约id等。
具体进行分拣时,分拣节点可以先获取智能合约的标识信息,再识别第一消息中间件中与标识信息匹配的签署信息,从而完成分拣。进行分拣时,可以分拣一个或多个智能合约对应的标识信息。
本实施例中,由于通过多个第一消息中间件接收智能合约的签署信息,导致可能存在属于一个智能合约的多个签署信息被不同的第一消息中间件接收的情况。因此,本实施例中,通过分拣节点根据智能合约的标识信息对第一消息中间件的签署信息进行分拣,从而可以将智能合约的标识信息对应的签署信息分拣出来,并在步骤S106中将分拣的签署信息投递至智能合约的标识信息对应的第二消息中间件中,以实现一个智能合约的签署信息的归并。
另外,本实施例中,通过第一消息中间件接收接入节点投递的签署信息,然后通过分拣节点分拣第一消息中间件中的信息,从而通过第一消息中间件实现了接入节点和分拣节点的解耦,减小了接入节点与分拣节点之间的相互影响。
步骤S106、将分拣得到的所述签署信息投递至与所述智能合约的标识信息对应的第二消息中间件中,以通过所述第二消息中间件对所述签署信息进行归并。
本实施例中,由于一个标识信息对应一个智能合约,则将分拣得到的消息投递至与标识信息对应的第二消息中间件中,可以使得同一个智能合约的多个签署信息被投递至与该智能合约的标识信息对应的第二消息中间件中,从而可以通过第二消息中间件实现对签署信息的归并,即将同一个智能合约的多个签署信息归并至智能合约的标识信息对应的第二消息中间件中;在消费签署信息时,还可以根据智能合约的标识信息从对应的第二中间件中准确地确定签署信息。可选地,本实施例中,所述智能合约可以包括多个,则在投递时,将各个所述智能合约的所述签署信息分别投递至与各个智能合约的标识信息对应的第二消息中间件中,从而在消费智能合约的签署信息时,可以根据智能合约的标识信息,直接从对应的第二消息中间件中拉取对应的签署信息,使得签署信息的消费更加方便。
具体地,一个或多个第二消息中间件中可以设置有多个消息队列,消息队列与智能合约一一对应,并通过智能合约的标识信息进行标识。或者,智能合约可以与第二消息中间件一一对应。
本实施例提供的方案,通过多个第一消息中间件分别接收多个接入节点投递的智能合约的签署信息,从而可以避免多对一提交导致的数据堵塞等情况,提高了区块链系统的性能,并通过分拣节点可以根据智能合约的标识信息,对多个第一消息中间件中的签署信息进行分拣,并将分拣得到的签署信息投递至标识信息对应的第二消息中间件中,从而可以将同属于一个智能合约的签署信息投递至与该智能合约的标识信息对应的第二消息中间件中,即,通过第二消息中间件接收并存储该智能合约的所有签署信息,进而可以通过第二消息中间件对智能合约的签署信息进行归并;进行处理时,还可以直接从标识信息对应的第二消息中间件中拉取该智能合约的签署信息,方便了后续对签署信息的处理。
实施例二
参照图2,示出了根据本发明实施例二的一种区块链数据的处理方法的步骤流程图。
首先需要说明的是,本实施例提供的方法适用于区块链系统,区块链系统可以包括:分拣节点、第二消息中间件、多个接入节点、多个第一消息中间件。
基于上述区块链系统,本实施例提供的方法包括以下步骤:
步骤S202、通过多个第一消息中间件,接收区块链的多个接入节点分别投递的智能合约的签署信息。
本步骤的具体实现方式与上述实施例中的步骤S102类似,在此不再赘述。
步骤S204、通过所述区块链的分拣节点,根据所述智能合约的标识信息,对所述多个第一消息中间件中的所述签署信息进行分拣。
具体地,第一消息中间件不仅可以接收签署信息,还可以接收其他信息。则进行分拣时,分拣节点可以从多个第一消息中间件批量拉取消息,例如100条消息等,然后从拉取的消息中识别出与智能合约的标识信息对应的签署信息,以进行分拣。
具体地,当分拣节点的数量包括多个、智能合约的数量也为多个时,一个分拣节点可以负责分拣部分或全部的智能合约对应的签署信息,本实施例对此不进行限定。
步骤S206、确定通过所述分拣节点分拣到新的智能合约的签署信息,并确定新分拣到的签署信息对应的智能合约的标识信息。
本实施例中,不同的接入节点将签署信息投递至第一消息中间件的时间可能不同,可能出现上一个签署信息已经被分拣出来,下一个签署信息还未被第一消息中间件接收到的情况,使得可能出现分拣节点需要进行多次分拣才能分拣得到新的签署信息。因此,每次分拣时的分拣结果可以为:分拣到新的签署信息,或者未分拣到新的签署信息。
本实施例中,可以通过分拣节点进行多次分拣,直至确定分拣到新的签署信息后,再执行步骤S208。
步骤S208、判断所述第二消息中间件中是否存在与确定的标识信息对应的签署信息。
若不存在,则确定第一次分拣到该智能合约对应的签署信息,执行步骤S210,若存在,则执行步骤S212。
由于被分拣过的信息均被分拣节点投递至智能合约的标识信息对应的第二消息中间件中,因此,当新分拣到签署信息时,判断所述第二消息中间件中是否存在与新分拣到的签署信息对应的标识信息相对应的签署信息,从而可以通过步骤S212将已经分拣出来的、属于同一个智能合约的所有签署信息归并。
步骤S210、将新分拣到的所述签署信息投递至与所述智能合约的标识信息对应的第二消息中间件中。
执行步骤S210后,继续通过步骤S204进行分拣。
本步骤的具体实现方式与上述实施例中的步骤S106类似,在此不再赘述。
步骤S212、从所述第二消息中间件中拉取所述对应的签署信息,并与新分拣到的所述签署信息进行归并。
本实施例中,通过步骤S206-S208,可以在分拣节点分拣到新的智能合约的签署信息时,将新分拣到的签署信息与已经被分拣出来的该智能合约的签署信息进行归并,从而方便了后续对签署信息进行处理。
可选地,本实施例中,步骤S212之后,所述方法还包括:
步骤S214、判断归并后的签署信息是否符合所述智能合约的签署条件。
若满足,则执行步骤S216,若不满足,则表示仍需要获取其他接入节点的签署信息才能符合签署条件,执行步骤S210,并继续通过步骤S204进行分拣,直至归并后的签署信息符合智能合约的签署条件。
具体地,一般在使用消息中间件时,从消息中间件中拉取数据后,消息中间件中的数据不会被删除,因此本实施例中,通过步骤S212进行投递时,可以仅投递新分拣到的签署信息;当然,若第二消息中间件中已经分拣完成的签署信息在执行步骤S212后被删除,则进行投递时不仅需要投递新分拣到的签署信息,还需要投递其他已经分拣到的签署信息。
具体地,所述智能合约的签署条件可以包括:已获取所述智能合约要求的所述区块链中的多个节点签署的多个签署信息。例如,某一智能合约要求获取节点一、节点二、节点三的签署信息后才能进行签署,则签署条件可以包括已经获取节点一、节点二、节点三的签署信息。
当前的区块链系统中,由于不同的节点扮演不同的角色,而智能合约的签署需要特定角色的签署信息才能成功。因此,将智能合约的签署条件设置为:已获取所述智能合约要求的所述区块链中的多个节点签署的多个签署信息,更加符合区块链系统的业务需求。
本实施例中,获取的签署信息中可以包括节点标识,从而可以通过节点标识判断获取的签署信息是否与智能合约要求的多个节点匹配,进而可以判断是否已获取所述智能合约要求的所述区块链中的多个节点签署的多个签署信息。
当然,在本实施例的其他实现方式中,签署条件也可以为其他,例如可以为:已经获取区块链中2/3节点的签署信息等。
步骤S216、根据归并后的所述签署信息完成所述智能合约的签署。
本实施例中,在将新分拣到的签署信息与已经分拣到的签署信息归并后,通过步骤S214判断签署信息是否符合智能合约的签署条件,可以在分拣到签署条件所要求的最后一个签署信息后,及时确定签署信息已经符合智能合约的签署条件,进而及时地通过步骤S216完成智能合约的签署,缩短了签署智能合约所需的时间。
可选地,本实施例中,所述方法还包括:将所述多个第一消息中间件和/或所述第二消息中间件中存储时长大于或等于预设时长的签署信息删除。
通过第一消息中间件和/或第二消息中间件直接将存储时长大于或等于预设时长的签署信息删除,可以直接通过第一消息中间件和/或第二消息中间件实现过期数据的清理,无需再另外设置清理数据的模块,简化了区块链系统的结构。
具体地,预设时长可以由本领域的技术人员根据需要设置。例如,若3天内未收到智能合约签署所要求的全部节点的签署信息,则确定智能合约签署失败,此时可以将已经收到的签署信息删除,则本领域的技术人员可以将预设时长设为3天。
另外需要说明的是,本实施例提供的方案不仅可以用来处理智能合约的签署信息,还可以用来处理其他的离散型信息。例如,多个接入节点可以将离散型信息投递至第一消息中间件中,分拣节点可以将离散型信息进行分拣,并投递至对应的第二消息中间件中;区块链中的处理节点可以拉取第二消息中间件中的多个离散型信息,并对拉取的多个离散型信息进行统一处理。具体地,处理节点可以定时或定量拉取第二消息中间件中的离散型信息,本实施例对此不进行限定。
本实施例提供的方案,通过在新分拣到签署信息时,判断所述第二消息中间件中是否存在与新分拣到的签署信息对应的标识信息相对应的签署信息,从而可以将已经分拣出来的、属于同一个智能合约的所有签署信息归并;在归并完成后,判断签署信息是否符合智能合约的签署条件,可以在分拣到最后一个签署信息后,及时确定签署信息已经符合智能合约的签署条件,进而及时完成智能合约的签署,缩短了签署智能合约所需的时间。
本申请中实施例一或实施例二的区块链数据的处理方法可以由任意适当的具有数据处理能力的终端设备执行,包括但不限于:服务器、移动终端(如平板电脑、手机等)和PC机。
实施例三
参见图3,示出了根据本发明实施例三的一种区块链系统的结构框图。
本实施例的区块链系统包括:多个接入节点302以及多个第一消息中间件304,还包括:分拣节点306、第二消息中间件308。
所述多个接入节点302,用于接收并投递智能合约的签署信息至对应的第一消息中间件304;所述多个第一消息中间件304,用于接收区块链的所述多个接入节点302分别投递的所述签署信息;所述分拣节点306,用于根据所述智能合约的标识信息,对所述多个第一消息中间件304中的所述签署信息进行分拣,以及用于将分拣得到的所述签署信息投递至与所述智能合约的标识信息对应的第二消息中间件308中;所述第二消息中间件308,用于接收区块链的所述分拣节点306投递的所述签署信息,以对所述签署信息进行归并。
可选地,本实施例中,所述分拣节点还用于:确定分拣到新的智能合约的签署信息,并确定新分拣到的签署信息对应的智能合约的标识信息;判断所述第二消息中间件中是否存在与确定的标识信息对应的签署信息;若存在,则从所述第二消息中间件中拉取所述对应的签署信息,并与新分拣到的所述签署信息进行归并。
可选地,本实施例中,所述分拣节点还用于:判断归并后的签署信息是否符合所述智能合约的签署条件;若满足,则根据归并后的所述签署信息完成所述智能合约的签署。
可选地,本实施例中,所述智能合约的签署条件包括:已获取所述智能合约要求的所述区块链中的多个节点签署的多个签署信息。
可选地,本实施例中,所述智能合约包括多个,所述分拣节点具体用于:将各个所述智能合约的所述签署信息分别投递至与各个智能合约的标识信息对应的第二消息中间件中。
可选地,本实施例中,所述多个第一消息中间件和/或所述第二消息中间件还用于将其中存储时长大于或等于预设时长的签署信息删除。
可选地,本实施例中,区块链系统还可以包括存储节点,用来存储智能合约的合约数据,例如智能合约的标识信息、智能合约的合约内容等。当确定智能合约开始签署时,存储节点可以将智能合约的标识信息发送至分拣节点,使得分拣节点可以根据智能合约的标识信息进行分拣。
本实施例提供的区块链系统,通过多个第一消息中间件分别接收多个接入节点投递的智能合约的签署信息,从而可以避免多对一提交导致的数据堵塞等情况,提高了区块链系统的性能;并且,第一消息中间件的数量可以根据接入节点的数量进行设置,从而使得区块链系统针对不同业务场景的伸缩性较好;分拣节点可以根据智能合约的标识信息进行分拣,并投递至第二消息中间件中,从而可以通过第二消息中间件对智能合约的签署信息进行归并,方便了后续对签署信息的处理。
实施例四
本实施例基于上述实施例三的区块链系统,对方法应用的具体使用场景进行说明。
首先需要说明的是,如图4a所示,区块链系统包括:多个接入节点(分别为接入节点1、接入节点2、接入节点3…、接入节点n)以及多个第一消息中间件(分别为第一消息中间件a、第一消息中间件b、第一消息中间件c…),还包括:多个分拣节点(分别为分拣节点1、分拣节点2、…、分拣节点n)、一个智能合约001的标识信息对应的第二消息中间件,智能合约001的签署条件为:已获取所述智能合约要求的所述区块链中的接入节点1、接入节点2、接入节点3签署的三个签署信息。
参见图4b,示出了根据本发明实施例四的一种区块链数据的处理方法的步骤流程图。本实施例提供的方法包括:
步骤S401、接入节点1将智能合约001的签署信息投递至第一消息中间件a。
步骤S402、分拣节点1根据智能合约001的标识信息,对第一消息中间件a中的签署信息进行分拣,得到接入节点1的签署信息。
步骤S403、分拣节点1判断智能合约001的标识信息对应的第二消息中间件中是否包括已经分拣到的智能合约001的签署信息。
步骤S404、判断结果为不包括,分拣节点将接入节点1的签署信息投递至智能合约001的标识信息对应的第二消息中间件中。
步骤S405、接入节点2将智能合约001的签署信息投递至第一消息中间件b。
步骤S406、分拣节点3根据智能合约001的标识信息,对第一消息中间件b中的签署信息进行分拣,得到接入节点2的签署信息。
步骤S407、分拣节点3判断智能合约001的标识信息对应的第二消息中间件中是否包括已经分拣到的智能合约001的签署信息。
步骤S408、判断结果为包括,分拣节点3拉取第二消息中间件中已经分拣到的智能合约001的签署信息,并与接入节点2的签署信息进行归并。
步骤S409、分拣节点3判断归并后的签署信息是否符合智能合约001的签署条件。
步骤S410、判断结果为不符合,分拣节点3将接入节点2的签署信息投递至智能合约001的标识信息对应的第二消息中间件中。
步骤S411、接入节点3将智能合约001的签署信息投递至第一消息中间件c。
步骤S412、分拣节点1根据智能合约001的标识信息,对第一消息中间件c中的签署信息进行分拣,得到接入节点3的签署信息。
步骤S413、分拣节点1判断智能合约001的标识信息对应的第二消息中间件中是否包括已经分拣到的智能合约001的签署信息。
步骤S414、判断结果为包括,分拣节点1拉取第二消息中间件中已经分拣到的智能合约001的签署信息,并与接入节点3的签署信息进行归并。
步骤S415、分拣节点判断归并后的签署信息是否符合智能合约001的签署条件。
步骤S416、判断结果为符合,开始根据三个签署信息执行智能合约001的签署步骤。
需要说明的是,本实施例仅通过三个节点按顺序投递签署信息进行示例性说明,在实际应用时,接入节点投递签署信息的顺序可以是异步的、且不存在相互干预的,进而使得上述多个步骤的执行也是异步的,例如,上述步骤S403可以在步骤S405之后执行,同时各个步骤的执行结果会对分拣节点的判断结果存在影响,本领域的技术人员可以根据上述叙述确定分拣节点的不同判断结果,这也在本实施例的保护范围内。
本实施例提供的区块链系统,通过多个第一消息中间件分别接收多个接入节点投递的智能合约的签署信息,从而可以避免多对一提交导致的数据堵塞等情况,提高了区块链系统的性能;并且,第一消息中间件的数量可以根据接入节点的数量进行设置,从而使得区块链系统针对不同业务场景的伸缩性较好;分拣节点可以根据智能合约的标识信息进行分拣,并投递至第二消息中间件中,从而可以通过第二消息中间件对智能合约的签署信息进行归并,方便了后续对签署信息的处理。
实施例五
本申请实施例提供一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例一或二所述的区块链数据的处理方法。
本实施例的计算机存储介质,通过多个第一消息中间件分别接收多个接入节点投递的智能合约的签署信息,从而可以避免多对一提交导致的数据堵塞等情况,提高了区块链系统的性能,并通过分拣节点可以根据智能合约的标识信息,对多个第一消息中间件中的签署信息进行分拣,并将分拣得到的签署信息投递至标识信息对应的第二消息中间件中,从而可以将同属于一个智能合约的签署信息投递至与该智能合约的标识信息对应的第二消息中间件中,即,通过第二消息中间件接收并存储该智能合约的所有签署信息,进而可以通过第二消息中间件对智能合约的签署信息进行归并;进行处理时,还可以直接从标识信息对应的第二消息中间件中拉取该智能合约的签署信息,方便了后续对签署信息的处理。
需要指出,根据实施的需要,可将本发明实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。
上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的区块链数据的处理方法。此外,当通用计算机访问用于实现在此示出的区块链数据的处理方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的区块链数据的处理方法的专用计算机。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。
以上实施方式仅用于说明本发明实施例,而并非对本发明实施例的限制,有关技术领域的普通技术人员,在不脱离本发明实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明实施例的范畴,本发明实施例的专利保护范围应由权利要求限定。
Claims (8)
1.一种区块链数据的处理方法,其特征在于,包括:
通过多个第一消息中间件,接收区块链的多个接入节点分别投递的智能合约的签署信息,所述智能合约包括多个;
通过所述区块链的分拣节点,根据所述智能合约的标识信息,对所述多个第一消息中间件中的所述签署信息进行分拣;
将分拣得到的各个所述智能合约的所述签署信息分别投递至与各个所述智能合约的标识信息对应的第二消息中间件中,以通过所述第二消息中间件对所述签署信息进行归并;
确定通过所述分拣节点分拣到新的智能合约的签署信息,并确定新分拣到的签署信息对应的智能合约的标识信息;
判断所述第二消息中间件中是否存在与确定的标识信息对应的签署信息;
若存在,则从所述第二消息中间件中拉取所述对应的签署信息,并与新分拣到的所述签署信息进行归并。
2.根据权利要求1所述的方法,其特征在于,还包括:
判断归并后的签署信息是否符合所述智能合约的签署条件;
若满足,则根据归并后的所述签署信息完成所述智能合约的签署。
3.根据权利要求2所述的方法,其特征在于,所述智能合约的签署条件包括:已获取所述智能合约要求的所述区块链中的多个节点签署的多个签署信息。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
将所述多个第一消息中间件和/或所述第二消息中间件中存储时长大于或等于预设时长的签署信息删除。
5.一种区块链系统,其特征在于,包括:分拣节点、第二消息中间件、多个接入节点以及多个第一消息中间件,其中,
所述多个接入节点,用于接收并投递智能合约的签署信息至对应的第一消息中间件,所述智能合约包括多个;
所述多个第一消息中间件,用于接收区块链的所述多个接入节点分别投递的所述签署信息;
所述分拣节点,用于根据所述智能合约的标识信息,对所述多个第一消息中间件中的所述签署信息进行分拣,以及用于将分拣得到的各个所述智能合约的所述签署信息分别投递至与各个所述智能合约的标识信息对应的第二消息中间件中;
所述第二消息中间件,用于接收区块链的所述分拣节点投递的所述签署信息,以对所述签署信息进行归并;
所述分拣节点还用于:确定分拣到新的智能合约的签署信息,并确定新分拣到的签署信息对应的智能合约的标识信息;判断所述第二消息中间件中是否存在与确定的标识信息对应的签署信息;若存在,则从所述第二消息中间件中拉取所述对应的签署信息,并与新分拣到的所述签署信息进行归并。
6.根据权利要求5所述的系统,其特征在于,所述分拣节点还用于:判断归并后的签署信息是否符合所述智能合约的签署条件;若满足,则根据归并后的所述签署信息完成所述智能合约的签署。
7.根据权利要求6所述的系统,其特征在于,所述智能合约的签署条件包括:已获取所述智能合约要求的所述区块链中的多个节点签署的多个签署信息。
8.一种计算机存储介质,其特征在于,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-4任一项所述的区块链数据的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910599402.0A CN112181672B (zh) | 2019-07-04 | 2019-07-04 | 区块链数据的处理方法、区块链系统及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910599402.0A CN112181672B (zh) | 2019-07-04 | 2019-07-04 | 区块链数据的处理方法、区块链系统及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112181672A CN112181672A (zh) | 2021-01-05 |
CN112181672B true CN112181672B (zh) | 2022-06-21 |
Family
ID=73915915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910599402.0A Active CN112181672B (zh) | 2019-07-04 | 2019-07-04 | 区块链数据的处理方法、区块链系统及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112181672B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113179333B (zh) * | 2021-06-30 | 2021-09-03 | 北京航空航天大学 | 一种用于区块链的文件传输与实时计算系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114020726A (zh) * | 2021-11-26 | 2022-02-08 | 中国电力科学研究院有限公司 | 基于多元日志数据分析的日志审计方法、系统、设备及介质 |
CN114416490A (zh) * | 2022-01-24 | 2022-04-29 | 平安国际智慧城市科技股份有限公司 | 基于区块链的监控报警方法、装置、电子设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108256988A (zh) * | 2016-12-30 | 2018-07-06 | 深圳壹账通智能科技有限公司 | 征信机构联盟的数据处理方法及装置 |
US20200042971A1 (en) * | 2018-07-31 | 2020-02-06 | American Express Travel Related Services Co., Inc. | System and method for transaction account based micro-payments |
-
2019
- 2019-07-04 CN CN201910599402.0A patent/CN112181672B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114020726A (zh) * | 2021-11-26 | 2022-02-08 | 中国电力科学研究院有限公司 | 基于多元日志数据分析的日志审计方法、系统、设备及介质 |
CN114416490A (zh) * | 2022-01-24 | 2022-04-29 | 平安国际智慧城市科技股份有限公司 | 基于区块链的监控报警方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
面向区块链的数据管理中间件;邓思佳,佟兴,唐海波,张召,金澈清;《华东师范大学学报 (自然科学版)》;CNKI;20210930(第5期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN112181672A (zh) | 2021-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111510395B (zh) | 业务消息上报方法、装置、设备及介质 | |
CN108400927B (zh) | 一种针对高并发消息的消息推送方法及装置 | |
CN106302632B (zh) | 一种基础镜像的下载方法以及管理节点 | |
CN109271391B (zh) | 数据存储方法、服务器、存储介质及装置 | |
US8117609B2 (en) | System and method for optimizing changes of data sets | |
CN110738497B (zh) | 一种数据处理方法、装置、节点设备及存储介质 | |
CN110611891B (zh) | 一种短信发送方法及装置 | |
CN109152061B (zh) | 通道调配方法、装置、服务器及存储介质 | |
CN105847447B (zh) | 消息推送方法和装置 | |
CN111954173B (zh) | 发送短信的方法、装置、服务器及计算机可读存储介质 | |
CN107733967B (zh) | 推送信息的处理方法、装置、计算机设备和存储介质 | |
CN110855548A (zh) | 一种消息推送方法及装置 | |
CN109002424B (zh) | 文件格式转换方法、装置、计算机设备及存储介质 | |
CN111526081B (zh) | 邮件转发方法、装置、设备及存储介质 | |
CN112181672B (zh) | 区块链数据的处理方法、区块链系统及计算机存储介质 | |
CN110365605B (zh) | 一种消息发送方法、装置、设备及存储介质 | |
CN108073408B (zh) | 自助终端的系统更新方法和装置 | |
CN114189818A (zh) | 消息发送方法、装置、服务器及存储介质 | |
CN113329345A (zh) | 一种提高短信发送成功率的方法和装置 | |
US10574788B2 (en) | System for data transfer based on associated transfer paths | |
CN111538464A (zh) | 一种基于物联网平台的数据清理方法及装置 | |
CN115080156B (zh) | 基于流批一体的大数据批量计算的优化计算方法及装置 | |
CN114221925B (zh) | 消息推送方法、装置、电子设备及存储介质 | |
US8874646B2 (en) | Message managing system, message managing method and recording medium storing program for that method execution | |
CN113518317B (zh) | 提示信息的发送方法和装置、存储介质及电子装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |