一种联盟链的节点路由方法、装置、设备及存储介质与流程

文档序号:33505375发布日期:2023-03-18 00:03阅读:60来源:国知局
一种联盟链的节点路由方法、装置、设备及存储介质与流程

1.本发明涉及区块链技术领域,特别涉及一种联盟链的节点路由方法、装置、设备及存储介质。


背景技术:

2.联盟链是多个组织或机构参与的区块链,每个组织或机构管理一个或多个节点。节点的作用是负责维护区块链账本数据、处理事务提案和响应,并通过持续地申请更新事务来始终保持账本数据处于最新状态。
3.区块链提交交易的流程大致如下:客户端通过sdk向区块链网络发起一个交易提案,背书节点收到交易提案后,验证签名并确认提交者是否有权执行操作,并将背书结果返回客户端;客户端收集满足背书策略的背书结果后将数据打包组成一个交易并签名发送至共识节点,共识节点对交易进行共识排序,然后按照区块生成策略生成新的区块,并广播至区块链网络中的每一个节点,使每一个节点保持账本数据的最新状态。
4.目前,针对大部分的联盟链,客户端通过sdk向区块链网络发起交易提案时,sdk采用的是随机选择的方式选择区块链组织中的某一节点,若每次随机选择的为同一节点,会导致节点负载过重,影响交易的响应时间。


技术实现要素:

5.鉴于上述技术问题,本发明提供至少解决上述部分技术问题的一种联盟链的节点路由方法、装置、设备及存储介质,该方法将路由策略应用于联盟链提交交易,通过路由策略选择最优节点提交交易提案,减少了节点响应时间,并有助于保证节点访问的均衡,减少节点负载。
6.为实现上述目的,本发明采取的技术方案为:
7.第一方面,本发明实施例提供一种联盟链的节点路由方法,包括以下步骤:
8.s1、构建多种路由策略,基于路由策略的路由信息特征确定匹配规则;
9.s2、根据所述路由策略的路由信息特征结合业务需求,选择调用符合业务需求的路由策略;
10.s3、根据所述匹配规则,将选择的路由策略应用于联盟链的路由发布、接收和引入的过程中,选择出最优节点进行访问发送交易提案。
11.进一步地,所述步骤s1中,所述多种路由策略包括:简单路由策略、均衡路由策略、加权路由策略和延迟路由策略,其中:
12.所述简单路由策略为:客户端收到多个节点资源并需要对其中一个进行选择时,采用随机算法随机选择要访问的节点;
13.所述均衡路由策略为:客户端收到一种类型的节点有多个时,将节点进行排序,采用轮询算法按顺序选择要访问的节点;
14.所述加权路由策略为:客户端收到的节点资源中包含权重值时,将各节点资源的
权重值求总和,根据随机值选择要访问的节点;
15.所述延迟路由策略为:客户端收到域名对应的多个目标节点时,选取响应时间最短的节点进行访问,之后从剩余的节点中选择响应时间最短的节点进行访问。
16.进一步地,所述步骤s2中,选择调用符合业务需求的路由策略时,每次调用只能选择所述简单路由策略、均衡路由策略、加权路由策略和延迟路由策略中的一种。
17.进一步地,所述步骤s3中,所述将选择的路由策略应用于联盟链的路由发布、接收和引入的过程中,选择出最优节点进行访问发送交易提案,具体为:
18.在路由发布过程中:将选择的路由策略通知sdk,sdk根据选择的所述路由策略选择待访问节点;
19.在路由接收过程中:sdk接收选择的路由策略,根据选择的路由策略选择最优访问节点;
20.在路由引入过程中:sdk根据所述最优访问节点构造访问请求,向节点发送交易提案。
21.第二方面,本发明实施例还提供一种联盟链的节点路由装置,应用上述实施例所述的一种联盟链的节点路由方法,实现选择最优节点提交交易提案;该装置包括:
22.路由策略构建模块,用于构建多种路由策略,基于路由策略的路由信息特征确定匹配规则;
23.路由策略选择模块,用于根据所述路由策略的路由信息特征结合业务需求,选择调用符合业务需求的路由策略;
24.路由策略应用模块,用于根据所述匹配规则,将选择的路由策略应用于联盟链的路由发布、接收和引入的过程中,选择出最优节点进行访问发送交易提案。
25.第三方面,本发明实施例还提供一种节点路由设备,该节点路由设备包括:处理器、存储器、以及存储在所述存储器上并可被所述处理器执行的计算机程序,其中:
26.所述计算机程序被所述处理器执行时,实现上述实施例中的一种联盟链的节点路由方法的步骤。
27.第四方面,本发明实施例还提供一种存储介质,其上存储有计算设备可读的一个或多个程序,其特征在于:所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备实现上述实施例中所述的一种联盟链的节点路由方法。
28.与现有技术相比,本发明具有如下有益效果:
29.1、本发明实施例提供的一种联盟链的节点路由方法,构建了多种路由策略,将路由策略应用于联盟链提交交易,通过路由策略选择最优节点提交交易提案,减少了节点响应时间,并有助于保证节点访问的均衡,有效减少了节点负载。
30.2、本发明构建的加权路由策略和延迟路由策略可提高节点的响应效率。其中,加权路由策略将各节点资源的权重求总和,根据随机数选取节点,节点资源权重越大,选取的几率也就越大;延迟路由策略根据节点响应时间选取节点,响应时间短。
31.3、本发明构建的四种路由策略在一定程度上都实现了负载均衡,防止单一节点负载过大。简单路由策略通过随机选择算法选择要访问的节点,在一定程度上减少重复选择的概率,达到均衡的效果;均衡路由策略将节点进行排序,每次调用按顺序选择节点,从而保证节点访问次数的均衡;加权路由策略第一次选择节点资源权重大的,之后从剩下的节
点中选择节点资源权重大的,保证每次访问不同节点,从而达到均衡的效果;延迟路由策略第一次选取响应时间最短的节点进行访问,之后从剩下的节点中选择响应时间最短的节点,保证每次访问不同节点,从而达到均衡的效果。
32.本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
33.下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
34.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
35.附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
36.图1为本发明实施例提供的一种联盟链的节点路由方法的流程示意图。
37.图2为本发明实施例提供的一种联盟链的节点路由装置的示意性框图。
38.图3是本发明实施例提供的一种节点路由设备的结构示意性框图。
具体实施方式
39.为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
40.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“设置有”、“连接”等,应做广义理解,例如“连接”,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,各种序号仅用于描述目的,而不能理解为指示或暗示相对重要性。
41.下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
42.实施例1:
43.参照图1所示,本发明提供了一种联盟链的节点路由方法,包括以下步骤:
44.s1、构建多种路由策略,基于路由策略的路由信息特征确定匹配规则;
45.s2、根据所述路由策略的路由信息特征结合业务需求,选择调用符合业务需求的路由策略;
46.s3、根据所述匹配规则,将选择的路由策略应用于联盟链的路由发布、接收和引入的过程中,选择出最优节点进行访问发送交易提案。
47.下面分别对上述各个步骤进行详细的说明:
48.在上述步骤s1中,构建了多种路由策略供选择使用,包括简单路由策略、均衡路由策略、加权路由策略和延迟路由策略,具体参考如下:
49.简单路由策略是最简单的一种方式,当客户端收到多个资源并需要对其中一个进行选择时,此时自行采用一种算法(如随机算法,代码采用random.nextint(size),其中size是节点的数量)随机的向目标地址发送请求。
50.均衡路由策略指的是,客户端收到一种类型的节点有多个时,将节点进行排序,采用算法按顺序选择要访问的节点;即客户端收到某一种类型的地址往往会有多个,此时自行采用一种算法(如轮询算法)均衡的向目标地址发送请求,使得服务器收到的请求量基本相同,避免单一服务负载过大。
51.加权路由策略依赖于服务器端的地址配置,服务器端会给每个资源分配一个权重。客户端收到的资源记录中包含该权重值,客户端会把同一种资源的所有权重值求和得到n,然后生成0到n的一个随机值,根据随机值坐落的空间选择一个资源地址。
52.延迟路由策略指的是,客户端收到域名对应的多个目标节点时,选取响应时间最短的节点进行访问,之后从剩余的节点中选择响应时间最短的节点进行访问;即客户端在收到域名对应的多个目标地址后,第一次访问资源时,随机选取2个(可配置)地址,然后对两个地址进行ping操作,并记录两个地址rtt时间,选择其中rtt返回时间最短的发送请求;第二次访问资源则是选择另外一个地址进行ping操作,并与其之前rtt进行比较,选择rtt时间最短的发送请求;以此类推,当发送请求前,发现所有地址都ping完,将直接向最短rtt发送请求。
53.进一步地,可以将要实施路由策略的路由信息的特征作为匹配依据进行设置。
54.在上述步骤s2中,根据路由策略的路由信息的特征以及实际的应用需求,选择符合实际应用需求的路由策略。
55.根据业务需求选择路由策略,每次调用只能选择简单路由策略、均衡路由策略、加权路由策略和延迟路由策略其中的一种。
56.在上述步骤s3中,根据设置的匹配规则,再将它们应用于路由的发布、接收和引入等过程中。
57.路由发布:将选择的路由策略通知sdk,sdk根据选择的路由策略选择待访问的节点。
58.路由接收:sdk接收选择的路由策略,根据选择的路由策略选择最终要访问的节点。简单路由策略,即从节点列表中随机选择一个节点作为最终的访问节点;均衡路由策略,即将节点列表排序,并从排好序的节点列表中按顺序选择节点,每次访问之后记录该次访问的节点,方便下次选择;加权路由策略,即根据节点资源权重选择最终的访问节点;延迟路由策略,即选择节点响应时间最短的节点作为最终访问节点。
59.路由引入:sdk根据最后选择出来的节点构造访问请求,向节点发送交易提案。
60.实施例2:
61.如图2所示,本发明实施例还提供一种联盟链的节点路由装置,应用实施例1的一种联盟链的节点路由方法,实现选择最优节点提交交易提案,该装置包括:
62.路由策略构建模块,用于构建多种路由策略,基于路由策略的路由信息特征确定
匹配规则;
63.路由策略选择模块,用于根据所述路由策略的路由信息特征结合业务需求,选择调用符合业务需求的路由策略;
64.路由策略应用模块,用于根据所述匹配规则,将选择的路由策略应用于联盟链的路由发布、接收和引入的过程中,选择出最优节点进行访问发送交易提案。
65.本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容,在此不再赘述。
66.实施例3:
67.如图3所示,本发明实施例还提供一种节点路由设备,该节点路由设备包括:处理器(处理组件)、存储器(存储组件)、以及存储在存储器上并可被处理器执行的计算机程序(计算机指令),其中:计算机程序被处理器执行时,实现上述实施例1中的一种联盟链的节点路由方法。
68.图3中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上设备的限定,具体的节点路由设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
69.需要说明的是,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的节点路由设备的具体工作过程,可以参考上述方法实施例中的对应过程,在此不再赘述。
70.实施例4:
71.本发明实施例还提供一种存储介质;其上存储有计算设备可读的一个或多个程序,一个或多个程序包括指令,指令当由计算设备执行时,使得计算设备执行实施例1中的一种联盟链的节点路由方法。
72.本发明实施例,存储介质例如可以是电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。更具体的例子(非穷举)包括:便携式计算机盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
73.通过上述实施例的描述,本领域技术人员可知本发明提供了一种联盟链的节点路由方法、装置、设备及存储介质;本发明针对大部分的联盟链,客户端通过sdk向区块链网络发起交易提案时,sdk采用的是随机选择的方式选择区块链组织中的某一节点,若每次随机选择的为同一节点,会导致出现节点负载过重,影响交易的响应时间的问题,因此,本发明设计了一种联盟链的节点路由方法,其中构建了四种路由策略,其中:
74.本发明提供的加权路由策略和延迟路由策略,在一定程度上可提高节点的响应时间。其中,加权路由策略将各节点资源的权重求总和n,根据随机数(0-n)选取节点,节点资源权重越大,选取的几率也就越大;延迟路由策略根据节点响应时间选取节点,响应时间短。
75.本发明提供的四种路由策略在一定程度上都实现了负载均衡,防止单一节点负载
过大。简单路由策略通过随机选择算法选择要访问的节点,在一定程度上减少重复选择的概率,达到均衡的效果;均衡路由策略将节点进行排序,每次调用按顺序选择节点,从而保证节点访问次数的均衡;加权路由策略第一次选择节点资源权重大的,之后从剩下的节点中选择节点资源权重大的,保证每次访问不同节点,从而达到均衡的效果;延迟路由策略第一次选取响应时间最短的节点进行访问,之后从剩下的节点中选择响应时间最短的节点,保证每次访问不同节点,从而达到均衡的效果。
76.本发明将上述路由策略应用于联盟链提交交易,通过路由策略轮询选择性能(响应时间)最优的节点提交交易提案,从而保证节点的负载均衡。本发明中sdk根据用户选择的路由策略在节点列表中选择一个节点进行访问,替代了原来sdk随机选择节点访问的方式,通过sdk+路由策略的方式保证节点访问的均衡,在一定程度上减少了节点响应时间。
77.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
78.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1