CN110189226B - 一种区块链共识方法及装置,一种联盟链系统 - Google Patents

一种区块链共识方法及装置,一种联盟链系统 Download PDF

Info

Publication number
CN110189226B
CN110189226B CN201910470611.5A CN201910470611A CN110189226B CN 110189226 B CN110189226 B CN 110189226B CN 201910470611 A CN201910470611 A CN 201910470611A CN 110189226 B CN110189226 B CN 110189226B
Authority
CN
China
Prior art keywords
consensus
event
domain
target domain
alliance
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
Application number
CN201910470611.5A
Other languages
English (en)
Other versions
CN110189226A (zh
Inventor
谢越津
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Onething Technology Co Ltd
Shenzhen Xunlei Network Technology Co Ltd
Original Assignee
Shenzhen Onething Technology Co Ltd
Shenzhen Xunlei Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Onething Technology Co Ltd, Shenzhen Xunlei Network Technology Co Ltd filed Critical Shenzhen Onething Technology Co Ltd
Priority to CN201910470611.5A priority Critical patent/CN110189226B/zh
Publication of CN110189226A publication Critical patent/CN110189226A/zh
Application granted granted Critical
Publication of CN110189226B publication Critical patent/CN110189226B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Engineering & Computer Science (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种区块链共识方法及装置和一种联盟链系统。本发明还公开了区块链共识设备及可读存储介质。本发明公开的方法应用于联盟链系统中的任意一个设有至少一个域的联盟,包括:接收待共识事件,获取待共识事件的来源账号;在联盟中确定与来源账号对应的域;将待共识事件发送至该域中的节点,以使该域中的节点对待共识事件进行共识。本发明公开的联盟利用自身内部的域中的节点对待共识事件进行共识,即实现了自我内部共识事件,从而解决了不同联盟争抢资源的问题;并且联盟内设有多个域,这多个域可以并发共识事件,解决了联盟链系统待共识事件突增的问题,提高了事件共识效率。

Description

一种区块链共识方法及装置,一种联盟链系统
技术领域
本发明涉及区块链技术领域,特别涉及一种区块链共识方法、装置、设备及可读存储介质和一种联盟链系统。
背景技术
一般地,一个联盟链系统包括多个联盟,联盟内的数据可以共享,不同联盟之间数据隔离。因此多个联盟可组成联盟链系统,现有的联盟链系统中的每个联盟通过同一个链进行共识,具体请参见图8。图8为本发明公开的一种现有联盟链系统,该系统包括联盟A、联盟B和联盟C,其中,各个联盟内以订阅方式共享数据,不同联盟之间数据隔离。在此系统中,若某个联盟中的待共识事件突增,极有可能导致待共识事件处理不过来而堆积,同时也会影响其他联盟中的待共识事件的共识。
因此现有的联盟链系统实现了联盟内数据共享和联盟外数据隔离,但由于不同联盟基于同一个链进行共识,导致可能出现争抢资源的情况,单链式的共识方式也无法满足联盟链系统待共识事件突增的情况。
发明内容
有鉴于此,本发明的主要目的在于提供一种区块链共识方法、装置、设备及可读存储介质和一种联盟链系统,旨在解决联盟链系统待共识事件突增,导致待共识事件处理不过来而堆积的技术问题。其具体方案如下:
为实现上述目的,本发明提供了一种区块链共识方法,应用于包括至少一个域的联盟,所述联盟为联盟链系统中的任意一个,所述方法包括:
接收待共识事件,获取待共识事件的来源账号;
在联盟中确定与来源账号对应的第一目标域;
将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识。
优选地,在第一目标域中的节点对待共识事件进行共识之后,所述方法还包括:
获取待共识事件的目的账号,并确定目的账号对应的第二目标域;
若第二目标域与第一目标域为不同的域,则将待共识事件发送至第二目标域中的节点,以使第二目标域中的节点对待共识事件进行共识。
优选地,在将待共识事件发送至第二目标域中的节点之前,所述方法还包括:
若联盟中不存在目的账号对应的域,则丢弃待共识事件。
优选地,获取待共识事件的来源账号之后,所述方法还包括:
判断来源账号是否属于联盟;
若是,则执行在联盟中确定与来源账号对应的第一目标域的步骤;
若否,则丢弃待共识事件。
优选地,所述方法还包括:
检测联盟中的每个域的负载,并判断每个域的负载是否超过预设的阈值;
若是,则在联盟中创建新的域,以利用创建得到的域中的节点进行事件共识。
优选地,所述方法还包括:
当接收到新的待共识事件,按照负载均衡算法在联盟中确定对新的待共识事件进行共识的域。
为实现上述目的,本发明进一步提供了一种区块链共识装置,应用于包括至少一个域的联盟,联盟为联盟链系统中的任意一个,所述装置包括:
接收模块,用于接收待共识事件,获取待共识事件的来源账号;
确定模块,用于在联盟中确定与来源账号对应的第一目标域;
共识模块,用于将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识。
优选地,所述装置还包括:
获取模块,用于获取待共识事件的目的账号,并确定目的账号对应的第二目标域;
跨域共识模块,用于若第二目标域与第一目标域为不同的域,则将待共识事件发送至第二目标域中的节点,以使第二目标域中的节点对待共识事件进行共识。
优选地,所述装置还包括:
第一丢弃模块,用于若联盟中不存在目的账号对应的域,则丢弃待共识事件。
优选地,所述装置还包括:
判断模块,用于判断来源账号是否属于联盟;
执行模块,用于若来源账号属于联盟,则执行在联盟中确定与来源账号对应的第一目标域的步骤;
第二丢弃模块,用于若来源账号属于联盟,则丢弃待共识事件。
优选地,所述装置还包括:
检测模块,用于检测联盟中的每个域的负载,并判断每个域的负载是否超过预设的阈值;
创建模块,用于若每个域的负载超过预设的阈值,则在联盟中创建新的域,以利用创建得到的域中的节点进行事件共识。
优选地,所述装置还包括:
负载均衡模块,用于当接收到新的待共识事件,按照负载均衡算法在联盟中确定对新的待共识事件进行共识的域。
为实现上述目的,本发明进一步提供了一种区块链共识设备,设备包括存储器和处理器,存储器上存储有可在处理器上运行的计算机程序,计算机程序被处理器执行时实现前述任一项公开的区块链共识方法。
为实现上述目的,本发明进一步提供了一种联盟链系统,包括:
至少一个联盟,每个联盟包括至少一个域和至少一个路由模块,其中,每个域中包含至少两个节点;
路由模块用于接收待共识事件;获取待共识事件的来源账号;在联盟中确定与来源账号对应的第一目标域;将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识。
为实现上述目的,本发明进一步提供了一种可读存储介质,用于保存计算机程序,其中,计算机程序被处理器执行时实现前述公开的区块链共识方法。
可见,本发明提供的区块链共识方法应用于联盟链系统中的任意一个设有至少一个域的联盟,当该联盟接收到待共识事件后,利用自身内部的域中的节点对待共识事件进行共识;也即:联盟不再将待共识事件发送至联盟外部的单一链进行共识,而是自我内部共识事件,从而解决了不同联盟争抢资源的问题;并且,联盟内设有多个域,这多个域同构且平行,因此可以并发共识事件,故解决了联盟内待共识事件突增的问题。
需要说明的是,本发明公开的“域”可看作现有技术中的单一“链”,且一个联盟内可设多个“域”,因此本发明不仅避免了不同联盟争抢资源的问题,还增加了“链”的数量,从而提高了联盟链系统的事件共识效率。同时,本发明公开的事件共识方法在联盟内完成,且与外部的其他联盟无通信,因此也实现了联盟链系统中的联盟内数据共享和联盟外数据隔离。
相应地,本发明提供的一种区块链共识装置、设备及可读存储介质和一种联盟链系统,也同样具有上述技术效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明第一实施例公开的方法流程图;
图2为本发明第二实施例公开的方法流程图;
图3为本发明第三实施例公开的方法流程图;
图4为本发明第四实施例公开的系统示意图;
图5为本发明第四实施例公开的另一种联盟链系统示意图;
图6为本发明第五实施例公开的装置示意图;
图7为本发明第六实施例公开的设备示意图;
图8为本发明公开的一种现有联盟链系统示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明第一实施例公开了第一种区块链共识方法,参见图1,图1为本发明第一实施例公开的方法流程图。
在第一实施例中,该方法应用于包括至少一个域的联盟,所述联盟为联盟链系统中的任意一个,该方法包括:
S101、接收待共识事件,获取待共识事件的来源账号;
具体的,若待共识事件为联盟内的某个节点上的交易,则待共识事件的来源账号即为提交交易的账号。本实施例公开的方法可以由联盟中的路由模块执行。
S102、在联盟中确定与来源账号对应的第一目标域;
具体的,联盟中预设有至少一个域,本实施例公开的“域”可看作现有技术中的单一“链”。该域是一条单链,且是同构的,因此可以平行扩展,即:可设置多个域。每个域接入有多个节点,接入同一个域的节点可以共享数据,当然不同域之间也可以共享数据。其中,一个节点一般只能接入某一个域。
与来源账号对应的第一目标域为:对待共识事件进行共识的节点所在的域。需要说明的是,对待共识事件进行共识的节点一般根据待共识事件的来源账号确定,也就是说,对于某个来源账号提交的待共识事件,对其共识的节点是预先设定的,因此获取共识事件的来源账号,便可以确定对其共识的节点,而这些节点所在的域即为第一目标域。
S103、将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识。
在本实施例中,对待共识事件进行共识的算法可参考现有技术,例如:实用拜占庭容错算法PBFT(Practical Byzantine Fault Tolerance),故本实施例在此不再赘述。
可见,本发明实施例提供的区块链共识方法应用于联盟链系统中的任意一个设有至少一个域的联盟,当该联盟接收到待共识事件后,利用自身内部的域中的节点对待共识事件进行共识;也即:联盟不再将待共识事件发送至联盟外部的单一链进行共识,而是自我内部共识事件,从而解决了不同联盟争抢资源的问题;并且,联盟内设有多个域,这多个域同构且平行,因此可以并发共识事件,故解决了联盟内待共识事件突增的问题。
需要说明的是,本实施例公开的“域”可看作现有技术中的单一“链”,且一个联盟内可设多个“域”,因此本实施例不仅避免了不同联盟争抢资源的问题,还增加了“链”的数量,从而提高了联盟链系统的事件共识效率。同时,本实施例公开的共识方法在联盟内完成,且与外部的其他联盟无通信,因此也实现了联盟链系统中的联盟内数据共享和联盟外数据隔离。
本发明第二实施例公开了第二种区块链共识方法,参见图2,图2为本发明第二实施例公开的方法流程图。
在第二实施例中,该方法应用于包括至少一个域的联盟,所述联盟为联盟链系统中的任意一个,所述方法包括:
S201、接收待共识事件,获取待共识事件的来源账号;
S202、判断来源账号是否属于联盟;若是,则执行S203;若否,则执行S206;
S203、在联盟中确定与来源账号对应的第一目标域;
S204、将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识;
S205、获取待共识事件的目的账号,并确定目的账号对应的第二目标域;若第二目标域与第一目标域为不同的域,则将待共识事件发送至第二目标域中的节点,以使第二目标域中的节点对待共识事件进行共识;
S206、丢弃待共识事件。
需要说明的是,S205中的在将待共识事件发送至第二目标域中的节点之前,还包括:
判断联盟中是否存在目的账号对应的域;若是,则将待共识事件发送至第二目标域中的节点,以使第二目标域中的节点对待共识事件进行共识;若否,则丢弃待共识事件。
可以理解的是,S206的执行主体可以是对待共识事件进行共识的节点(例如第一目标域中的记账节点)。
可以理解的是,在来源账号和目的账号均属于同一联盟的前提下,若来源账号和目的账号对应的域相同,则利用此域中的节点共识事件;若来源账号和目的账号对应的域不同,则分别利用两个域中的节点共识事件,即实现跨域共识。
需要说明的是,由于本实施例应用于联盟内部,因此其一般只能处理联盟内部的待共识事件,因此在对一个待共识事件进行共识之前,需要首先确定待共识事件的来源账号和目的账号是否均属于联盟;若来源账号和目的账号均属于联盟,则联盟可以按照本实施例提供的方法进行内部共识;若来源账号和目的账号中的任意一个不属于联盟,则说明需要与其他联盟进行通信,而本实施例由于实现了联盟外数据隔离,因此需要丢弃待共识事件。
需要说明的是,本实施例中的其他实现步骤与上述实施例相同或类似,故本实施例在此不再赘述。
由上可见,本发明实施例提供的区块链共识方法应用于联盟链系统中的任意一个设有至少一个域的联盟,当该联盟接收到待共识事件后,利用自身内部的域中的节点对待共识事件进行共识;也即:联盟不再将待共识事件发送至联盟外部的单一链进行共识,而是自我内部共识事件,从而解决了不同联盟争抢资源的问题;并且,联盟内设有多个域,这多个域同构且平行,因此可以并发共识事件,故解决了联盟内待共识事件突增的问题。
需要说明的是,本实施例公开的“域”可看作现有技术中的单一“链”,且一个联盟内可设多个“域”,因此本实施例不仅避免了不同联盟争抢资源的问题,还增加了“链”的数量,从而提高了联盟链系统的事件共识效率。同时,本实施例公开的事件共识方法在联盟内完成,且与外部的其他联盟无通信,因此也实现了联盟链系统中的联盟内数据共享和联盟外数据隔离。
本发明第三实施例公开了一种域管理方法,参见图3,图3为本发明第三实施例公开的方法流程图。
在第三实施例中,该方法应用于包括至少一个域的联盟,所述联盟为联盟链系统中的任意一个,所述方法包括:
S301、检测联盟中的每个域的负载;
S302、判断每个域的负载是否超过预设的阈值;若是,则执行S303;若否,则执行S304;
S303、在联盟中创建新的域,以利用创建得到的域中的节点进行事件共识。
S304、将联盟中的超过预设阈值的域确定为待调整域,并在联盟中创建新的域,以利用创建得到的域中的节点共识待调整域中的待共识事件。
本发明公开了一种联盟内的域,因此也相应地公开了一种域管理方法。具体的,由于联盟内设有多个域,每个域中接入了至少两个节点,因此每个域的负载是随时变化的,每个域的负载指的是:该域共识的待共识事件的数量,数量越多,表明该域的负载越高;若当前域的负载较高,则可以创建新的域,以利用新的域来处理当前域中的待共识事件。
需要说明的是,负载均衡存在两种情况:
第一:当用户掌握账号,每个账号被分配到对应的域,若某个域负载较高时,创建新的域,可将负载较大的域对应的部分账号及其数据迁移到新的域上,由新的域来执行该账号的交易共识。
第二:若平台存在多个账号(用户不掌握账号),将其分配置至各个域后,每个账号对应一个域。当创建新的域时,同时也创建新的账号,以使新的账号对应新的域。发起交易时做负载均衡,选择负载较低的域上的账号来发起交易。
为了实现域负载均衡,本实施例实时检测联盟中的每个域的负载,当联盟中的每个域的负载均超过预设的阈值,表明当前联盟中的待共识事件突增,且联盟中的域不足以满足当前情况,因此可以在联盟中创建新的域,以便利用创建得到的域中的节点进行事件共识,以减轻其他域的负载,提高联盟的并发共识能力。若联盟中仅有个别域的负载超过预设的阈值,那么可以将联盟中的超过预设阈值的域确定为待调整域,并在联盟中创建新的域,以利用创建得到的域中的节点共识待调整域中的待共识事件,这样就可以减轻待调整域的负载。
需要说明的是,本实施例中的其他实现步骤与上述实施例相同或类似,故本实施例在此不再赘述。
由上可见,本发明实施例提供了一种域管理方法,可以使联盟链系统中的联盟中的域实现负载均衡,还提高了联盟的并发共识能力。
本发明第四实施例公开了一种联盟链系统,参见图4,图4为本发明第四实施例公开的系统示意图。
在图4中,该系统包括:至少一个联盟,图4中示意有联盟1,联盟2,……,联盟N;
每个联盟至少包括一个域,图4中每个联盟示意有域1,域2,……,域N;其中,每个域中包含至少两个节点;
每个联盟至少包括一个路由模块,图4中每个联盟示意一个路由模块。
每个联盟中的路由模块用于接收待共识事件,获取待共识事件的来源账号;在联盟中确定与来源账号对应的第一目标域;将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识。
基于本实施例的核心思想,可设计如下系统,请参见图5,图5为本实施例公开的另一种联盟链系统,具体为:
若存在机构a、机构b和机构c,且机构a和机构b组成了联盟A,机构a和机构c组成了联盟B。因为商业机密,要求满足以下条件:
1、机构a和机构b都有对联盟A的读写权限,机构c没有对联盟A的任何权限;
2、机构a和机构c都有对联盟B的读写权限,机构b没有对联盟B的任何权限。
具体的,机构a和机构b分别提供自己的节点接入域1,这样机构a和机构b都在联盟A中有自己的节点,可以通过自己的节点对联盟A进行读写;而机构c没有节点接入联盟A,从而没有对联盟A的任何权限。
具体的,机构a和机构c分别提供自己的节点接入域1’,这样机构a和机构c都在联盟B中有自己的节点,可以通过自己的节点对联盟B进行读写,而机构b没有节点接入联盟B,从而没有对联盟B的任何权限。
因此,机构a和机构b的业务交易发生在联盟A的域1,机构a和机构c的业务交易发生在联盟B的域1’。域1和域1’不能发生跨域交易,也不会互相影响,即实现了联盟内数据共享和联盟外数据隔离。图5中的联盟管理指代的是管理联盟A和联盟B的管理中心。
机构a和机构b合作的业务交易量比较少,一个域的处理能力可以满足需求;但是机构a和机构c合作的业务交易量比较多,一个域的处理能力不能满足需求,于是机构a和机构c又分别提供自己的节点接入了域2’、甚至域3’、域4’等,直到这些域的处理能力能够满足需求。
需要说明的是,联盟链系统的最终目的是实现联盟内的数据共享和联盟外的数据隔离,原有技术方案也实现了这一点,但是,实际的联盟业务场景却不仅仅对这一点有要求,对高并发处理能力也有很高的期待,甚至有些业务对高并发处理能力是必须的。对于高并发处理能力,原有技术方案不具备。因此图5所示的系统引入了多域的概念,结合联盟链系统的权限控制,实现了联盟内的数据共享和联盟外的数据隔离,同时还让联盟内的域支持平行扩展,让联盟链系统能应用于更多领域,甚至是有高并发业务的领域都提供了可能性。
并且,各个联盟独立共识,相对于原有的统一共识,既有性能上的提高,也保证了各个联盟的稳定性。联盟内各个域支持域内部共识,所有发生在域内部的交易都只需内部共识。那么,只需尽量保证交易只发生在域内部,就可以节省域之间共识,这样性能又提高了很多,域的数量和并发处理能力也几乎呈倍数关系。
可见,本实施例提供了一种联盟链系统,该系统中的联盟不再将待共识事件发送至联盟外部的单一链进行共识,而是自我内部共识事件,从而解决了不同联盟争抢资源的问题;并且,联盟内设有多个域,这多个域同构且平行,因此可以并发共识事件,故解决了联盟内待共识事件突增的问题,提高了事件共识效率。本实施例公开的系统在联盟内完成事件共识,且任一联盟与外部的其他联盟无通信,因此也实现了联盟链系统中的联盟内数据共享和联盟外数据隔离。
本发明第五实施例公开了一种区块链共识装置,参见图6,图6为本发明第五实施例公开的装置示意图。
在第五实施例中,该装置应用于包括至少一个域的联盟,联盟为联盟链系统中的任意一个,所述装置包括:
接收模块601,用于接收待共识事件,获取待共识事件的来源账号;
确定模块602,用于在联盟中确定与来源账号对应的第一目标域;
共识模块603,用于将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识。
在一种具体实施方式中,所述装置还包括:
获取模块,用于获取待共识事件的目的账号,并确定目的账号对应的第二目标域;
跨域共识模块,用于若第二目标域与第一目标域为不同的域,则将待共识事件发送至第二目标域中的节点,以使第二目标域中的节点对待共识事件进行共识。
在一种具体实施方式中,所述装置还包括:
第一丢弃模块,用于若联盟中不存在目的账号对应的域,则丢弃待共识事件。
在一种具体实施方式中,所述装置还包括:
判断模块,用于判断来源账号是否属于联盟;
执行模块,用于若来源账号属于联盟,则执行在联盟中确定与来源账号对应的第一目标域的步骤;
第二丢弃模块,用于若来源账号属于联盟,则丢弃待共识事件。
在一种具体实施方式中,所述装置还包括:
检测模块,用于检测联盟中的每个域的负载,并判断每个域的负载是否超过预设的阈值;
创建模块,用于若每个域的负载超过预设的阈值,则在联盟中创建新的域,以利用创建得到的域中的节点进行事件共识。
在一种具体实施方式中,所述装置还包括:
负载均衡模块,用于当接收到新的待共识事件,按照负载均衡算法在联盟中确定对新的待共识事件进行共识的域。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
可见,本实施例提供了一种区块链共识装置,包括:接收模块、确定模块以及共识模块。首先由接收模块接收待共识事件,获取待共识事件的来源账号;然后确定模块在联盟中确定与来源账号对应的第一目标域;最后共识模块将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识。如此各个模块之间分工合作,各司其职,从而解决了不同联盟争抢资源和联盟内待共识事件突增的问题,提高了事件共识效率。
本发明第六实施例公开了一种区块链共识设备,参见图7,图7为本发明第六实施例公开的设备示意图。本实施例描述的一种区块链共识设备与上文描述的一种区块链共识方法及装置可以相互参照。
在第六实施例中,该设备包括存储器701和处理器702,其中:
所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器用于执行所述计算机程序,以实现以下步骤:
接收待共识事件,获取待共识事件的来源账号;在联盟中确定与来源账号对应的第一目标域;将待共识事件发送至第一目标域中的节点,以使第一目标域中的节点对待共识事件进行共识。
在本实施例中,所述处理器执行所述存储器中保存的计算机子程序时,可以具体实现以下步骤:获取待共识事件的目的账号,并确定目的账号对应的第二目标域;若第二目标域与第一目标域为不同的域,则将待共识事件发送至第二目标域中的节点,以使第二目标域中的节点对待共识事件进行共识。
在本实施例中,所述处理器执行所述存储器中保存的计算机子程序时,可以具体实现以下步骤:若联盟中不存在目的账号对应的域,则丢弃待共识事件。
在本实施例中,所述处理器执行所述存储器中保存的计算机子程序时,可以具体实现以下步骤:判断来源账号是否属于联盟;若是,则执行在联盟中确定与来源账号对应的第一目标域的步骤;若否,则丢弃待共识事件。
在本实施例中,所述处理器执行所述存储器中保存的计算机子程序时,可以具体实现以下步骤:检测联盟中的每个域的负载,并判断每个域的负载是否超过预设的阈值;若是,则在联盟中创建新的域,以利用创建得到的域中的节点进行事件共识。
在本实施例中,所述处理器执行所述存储器中保存的计算机子程序时,可以具体实现以下步骤:当接收到新的待共识事件,按照负载均衡算法在联盟中确定对新的待共识事件进行共识的域。
本发明第七实施例公开了一种可读存储介质,本实施例描述的一种可读存储介质与上文描述的一种区块链共识方法、装置及设备可以相互参照。
一种可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的区块链共识方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的可读存储介质中。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (9)

1.一种区块链共识方法,其特征在于,应用于包括至少一个域的联盟,所述联盟为联盟链系统中的任意一个,所述联盟与其他联盟无通信,所述方法包括:
接收待共识事件,获取所述待共识事件的来源账号;
在所述联盟中确定与所述来源账号对应的第一目标域;
将所述待共识事件发送至所述第一目标域中的节点,以使所述第一目标域中的节点对所述待共识事件进行共识;
其中,在所述第一目标域中的节点对所述待共识事件进行共识之后,所述方法还包括:
获取所述待共识事件的目的账号,并确定所述目的账号对应的第二目标域;
若所述第二目标域与所述第一目标域为不同的域,则将所述待共识事件发送至所述第二目标域中的节点,以使所述第二目标域中的节点对所述待共识事件进行共识。
2.根据权利要求1所述的区块链共识方法,其特征在于,在所述将所述待共识事件发送至所述第二目标域中的节点之前,所述方法还包括:
若所述联盟中不存在所述目的账号对应的域,则丢弃所述待共识事件。
3.根据权利要求1所述的区块链共识方法,其特征在于,所述获取所述待共识事件的来源账号之后,所述方法还包括:
判断所述来源账号是否属于所述联盟;
若是,则执行所述在所述联盟中确定与所述来源账号对应的第一目标域的步骤;
若否,则丢弃所述待共识事件。
4.根据权利要求1至3任意一项所述的区块链共识方法,其特征在于,所述方法还包括:
检测所述联盟中的每个域的负载,并判断所述每个域的负载是否超过预设的阈值;
若是,则在所述联盟中创建新的域,以利用创建得到的域中的节点进行事件共识。
5.根据权利要求4所述的区块链共识方法,其特征在于,所述方法还包括:
当接收到新的待共识事件,按照负载均衡算法在所述联盟中确定对所述新的待共识事件进行共识的域。
6.一种区块链共识装置,其特征在于,应用于包括至少一个域的联盟,所述联盟为联盟链系统中的任意一个,所述联盟与其他联盟无通信,所述装置包括:
接收模块,用于接收待共识事件,获取所述待共识事件的来源账号;
确定模块,用于在所述联盟中确定与所述来源账号对应的第一目标域;
共识模块,用于将所述待共识事件发送至所述第一目标域中的节点,以使所述第一目标域中的节点对所述待共识事件进行共识;
获取模块,用于获取所述待共识事件的目的账号,并确定所述目的账号对应的第二目标域;
跨域共识模块,用于若所述第二目标域与所述第一目标域为不同的域,则将所述待共识事件发送至所述第二目标域中的节点,以使所述第二目标域中的节点对所述待共识事件进行共识。
7.一种区块链共识设备,其特征在于,所述设备包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至5任一项所述的区块链共识方法。
8.一种联盟链系统,其特征在于,包括:
至少一个联盟,每个联盟包括至少一个域和至少一个路由模块,其中,每个域中包含至少两个节点;各联盟间无通信;
所述路由模块用于接收待共识事件;获取所述待共识事件的来源账号;在所述联盟中确定与所述来源账号对应的第一目标域;将所述待共识事件发送至所述第一目标域中的节点,以使所述第一目标域中的节点对所述待共识事件进行共识;
其中,在所述第一目标域中的节点对所述待共识事件进行共识之后,还包括:
获取所述待共识事件的目的账号,并确定所述目的账号对应的第二目标域;
若所述第二目标域与所述第一目标域为不同的域,则将所述待共识事件发送至所述第二目标域中的节点,以使所述第二目标域中的节点对所述待共识事件进行共识。
9.一种可读存储介质,其特征在于,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的区块链共识方法。
CN201910470611.5A 2019-05-31 2019-05-31 一种区块链共识方法及装置,一种联盟链系统 Active CN110189226B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910470611.5A CN110189226B (zh) 2019-05-31 2019-05-31 一种区块链共识方法及装置,一种联盟链系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910470611.5A CN110189226B (zh) 2019-05-31 2019-05-31 一种区块链共识方法及装置,一种联盟链系统

Publications (2)

Publication Number Publication Date
CN110189226A CN110189226A (zh) 2019-08-30
CN110189226B true CN110189226B (zh) 2024-02-27

Family

ID=67719481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910470611.5A Active CN110189226B (zh) 2019-05-31 2019-05-31 一种区块链共识方法及装置,一种联盟链系统

Country Status (1)

Country Link
CN (1) CN110189226B (zh)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1997031A (zh) * 2006-12-01 2007-07-11 清华大学 一种视频网格自适应负载均衡调度方法
CN107845032A (zh) * 2017-10-24 2018-03-27 深圳四方精创资讯股份有限公司 基于区块链的资产抵押方法及其系统
CN108306819A (zh) * 2018-04-20 2018-07-20 网易(杭州)网络有限公司 基于区块链的即时通讯系统实现方法、介质和计算设备
CN108320155A (zh) * 2017-12-21 2018-07-24 中国科学院信息工程研究所 一种实现区块链共识机制的方法
CN108833464A (zh) * 2018-04-13 2018-11-16 西安电子科技大学 邦联式多域物联网协同系统及方法、智慧城市、智能家居
KR101922565B1 (ko) * 2018-05-23 2018-11-27 (주)에스씨씨 이종 블록체인 간에 데이터의 공유를 가능하게 하는 얼라이언스 블록체인 시스템
CN108965468A (zh) * 2018-08-16 2018-12-07 北京京东尚科信息技术有限公司 区块链网络服务平台及其链码安装方法、存储介质
CN109474676A (zh) * 2018-10-18 2019-03-15 尚维斯 一种任意节点都可形成联盟链或私链的区块链
CN109493225A (zh) * 2018-11-12 2019-03-19 夸克链科技(深圳)有限公司 一种区块链的分域验证机制
CN109714170A (zh) * 2018-12-20 2019-05-03 弗洛格(武汉)信息科技有限公司 一种联盟链中数据隔离方法及相应的联盟链系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107341702B (zh) * 2017-03-08 2020-06-23 创新先进技术有限公司 一种业务处理的方法及装置
CN107196900B (zh) * 2017-03-24 2020-04-24 创新先进技术有限公司 一种共识校验的方法及装置

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1997031A (zh) * 2006-12-01 2007-07-11 清华大学 一种视频网格自适应负载均衡调度方法
CN107845032A (zh) * 2017-10-24 2018-03-27 深圳四方精创资讯股份有限公司 基于区块链的资产抵押方法及其系统
CN108320155A (zh) * 2017-12-21 2018-07-24 中国科学院信息工程研究所 一种实现区块链共识机制的方法
CN108833464A (zh) * 2018-04-13 2018-11-16 西安电子科技大学 邦联式多域物联网协同系统及方法、智慧城市、智能家居
CN108306819A (zh) * 2018-04-20 2018-07-20 网易(杭州)网络有限公司 基于区块链的即时通讯系统实现方法、介质和计算设备
KR101922565B1 (ko) * 2018-05-23 2018-11-27 (주)에스씨씨 이종 블록체인 간에 데이터의 공유를 가능하게 하는 얼라이언스 블록체인 시스템
CN108965468A (zh) * 2018-08-16 2018-12-07 北京京东尚科信息技术有限公司 区块链网络服务平台及其链码安装方法、存储介质
CN109474676A (zh) * 2018-10-18 2019-03-15 尚维斯 一种任意节点都可形成联盟链或私链的区块链
CN109493225A (zh) * 2018-11-12 2019-03-19 夸克链科技(深圳)有限公司 一种区块链的分域验证机制
CN109714170A (zh) * 2018-12-20 2019-05-03 弗洛格(武汉)信息科技有限公司 一种联盟链中数据隔离方法及相应的联盟链系统

Also Published As

Publication number Publication date
CN110189226A (zh) 2019-08-30

Similar Documents

Publication Publication Date Title
CN104050201A (zh) 用于多租户分布式环境中的数据管理的方法和设备
CN108881512B (zh) Ctdb的虚拟ip均衡分配方法、装置、设备及介质
CN106991008B (zh) 一种资源锁管理方法、相关设备及系统
US20180145890A1 (en) Service registration method and usage method, and related apparatus
CN106503058A (zh) 一种数据加载方法、终端和计算集群
CN112738172B (zh) 区块链节点的管理方法、装置、计算机设备和存储介质
CN108459913B (zh) 数据并行处理方法、装置及服务器
CN111722933B (zh) 分布式进程之间的死锁解决
US11438271B2 (en) Method, electronic device and computer program product of load balancing
US7574439B2 (en) Managing a nested request
CN112231102A (zh) 一种提升存储系统性能的方法、装置、设备、产品
JP2005502941A (ja) デッドロック検出のための犠牲選択
CN114884962B (zh) 负载均衡方法及装置和电子设备
CN111260253A (zh) 信息发送方法、装置、计算机设备及存储介质
CN110189226B (zh) 一种区块链共识方法及装置,一种联盟链系统
CN114036031A (zh) 一种企业数字中台中资源服务应用的调度系统和方法
CN111049750B (zh) 一种报文转发方法、系统及设备
CN110515564B (zh) 一种输入/输出i/o路径的确定方法和装置
CN110333944B (zh) 话单数据业务处理方法及设备
CN110351345B (zh) 用于业务请求处理的方法及装置
CN109862089B (zh) 数据处理方法、装置、系统、计算机可读存储介质
CN102868594B (zh) 一种消息处理方法和装置
CN109165135B (zh) 一种数据管理方法、计算机可读存储介质及终端设备
CN105204903A (zh) 一种进程模块加载拦截方法及装置
CN113010891B (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
TA01 Transfer of patent application right

Effective date of registration: 20210910

Address after: 518000 21 / f-23 / F, block B, building 12, Shenzhen Bay science and technology ecological park, No. 18, South Keji Road, high tech community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Applicant after: Xunlei Networking Technologies, Ltd.

Applicant after: SHENZHEN ONETHING TECHNOLOGIES Co.,Ltd.

Address before: 518052 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.)

Applicant before: SHENZHEN ONETHING TECHNOLOGIES Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant