服务关系的确定方法、装置、设备及计算机存储介质与流程
未命名
10-08
阅读:111
评论:0

1.本技术属于微服务技术领域,尤其涉及一种服务关系的确定方法、装置、设备及计算机存储介质。
背景技术:
2.在微服务架构中,随着系统越来越复杂,服务间调用链越来越长,一个普通的应用往往会依赖很多其他的服务,导致当任意一个服务出现系统故障时定位受影响服务的范围变得越来越困难。
3.现有技术中,主要通过当发生系统故障,或通过混沌演练等手段制造故障时,分析故障点服务与受影响服务间的关系,从而梳理服务间的强弱依赖关系。然而,基于实际的系统故障或基于混沌演练造成的系统故障,确定服务间强弱依赖关系时,都代表部分业务中断或业务的服务等级协议降级,并且微服务架构的所有服务不会全部出现一次或多次系统故障,因此,以上方式存在影响业务连续性以及服务节点之间的强弱依赖关系覆盖不全面的问题。
技术实现要素:
4.本技术实施例提供一种服务关系的确定方法、装置、设备及计算机存储介质,能够解决现有技术中确定服务间强弱依赖关系时影响业务连续性以及覆盖不全面的问题。
5.第一方面,本技术实施例提供一种服务关系的确定方法,该方法包括:
6.获取微服务中各服务节点的关系信息,所述关系信息包括各服务节点的标识,以及各服务节点的依赖信息;
7.获取执行业务过程中生成的服务节点的单链表信息,所述单链表信息包括各级服务节点的标识,各级服务节点的服务层长度;
8.基于所述单链表信息和所述关系信息生成所述各服务节点的二叉树结构信息,所述二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。
9.在一种实施方式中,所述关系信息包括与每个服务节点的具有强依赖关系的服务节点信息和具有弱依赖关系的服务节点信息的集合,其中,具有强依赖关系的服务节点信息变化时,服务节点具有影响关系;具有弱依赖关系的服务节点信息变化时,服务节点不具有影响关系。
10.在一种实施方式中,所述单链表信息还包括各节点的调用服务节点。
11.在一种实施方式中,所述方法还包括:
12.展示二叉树结构信息,其中,所述二叉树结构信息中具有强依赖关系的服务节点间采用第一预设展示方式连接;所述二叉树结构信息中具有弱依赖关系的服务节点间采用第二展示方式连接。
13.在一种实施方式中,所述第一预设展示方式包括具有强依赖关系的服务节点间以
实线连接展示,所述第二预设展示方式包括具有弱依赖关系的服务节点间以虚线连接展示。
14.第二方面,本技术实施例提供了一种服务关系的确定装置,该服务关系的确定装置包括:
15.获取模块,用于获取微服务中各服务节点的关系信息,所述关系信息包括各服务节点的标识,以及各服务节点的依赖信息;
16.所述获取模块,还用于获取执行业务过程中生成的服务节点的单链表信息,所述单链表信息包括各级服务节点的标识,各级服务节点的服务层长度;
17.生成模块,用于基于所述单链表信息和所述关系信息生成所述各服务节点的二叉树结构信息,所述二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。
18.在一种实施方式中,所述关系信息包括与每个服务节点的具有强依赖关系的服务节点信息和具有弱依赖关系的服务节点信息的集合,其中,具有强依赖关系的服务节点信息变化时,服务节点具有影响关系;具有弱依赖关系的服务节点信息变化时,服务节点不具有影响关系。
19.在一种实施方式中,所述单链表信息还包括各节点的调用服务节点。
20.在一种实施方式中,该服务关系的确定装置还包括展示模块;
21.所述展示模块,用于展示二叉树结构信息,其中,所述二叉树结构信息中具有强依赖关系的服务节点间采用第一预设展示方式连接;所述二叉树结构信息中具有弱依赖关系的服务节点间采用第二展示方式连接。
22.在一种实施方式中,所述第一预设展示方式包括具有强依赖关系的服务节点间以实线连接展示,所述第二预设展示方式包括具有弱依赖关系的服务节点间以虚线连接展示。
23.第三方面,本技术实施例提供了一种电子设备,该电子设备包括:处理器以及存储有计算机程序指令的存储器;
24.处理器执行计算机程序指令时实现如第一方面的任一项实施例中所述的服务关系的确定方法。
25.第四方面,本技术实施例提供了一种计算机存储介质,计算机存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现如第一方面的任一项实施例中所述的服务关系的确定方法。
26.第五方面,本技术实施例提供了一种计算机程序产品,所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行如第一方面的任一项实施例中所述的服务关系的确定方法。
27.本技术实施例的服务关系的确定方法、装置、设备及计算机存储介质,通过获取微服务中各服务节点的关系信息,关系信息包括各服务节点的标识,以及各服务节点的依赖信息,并获取执行业务过程中生成的服务节点的单链表信息,单链表信息包括各级服务节点的标识和各级服务节点的服务层长度,接着,基于单链表信息和关系信息生成各服务节点的二叉树结构信息,二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。这样,无需依赖于系统故障即可确定微服务之间的依
赖关系,降低了业务中断的风险,提升了系统稳定性,并且对每次业务执行都形成二叉树结构信息的分析数据,提高了微服务架构中服务节点之间强弱依赖关系的完整性。
附图说明
28.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
29.图1是本技术一个实施例提供的服务关系的确定方法的流程示意图;
30.图2是本技术一个实施例提供的单链表结构的示意图之一;
31.图3是本技术一个实施例提供的单链表结构的示意图之二;
32.图4是本技术一个实施例提供的二叉树结构的示意图;
33.图5是本技术一个实施例提供的服务关系的确定装置的结构示意图;
34.图6是本技术一个实施例提供的电子设备的结构示意图。
具体实施方式
35.下面将详细描述本技术的各个方面的特征和示例性实施例,为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本技术进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本技术,而不是限定本技术。对于本领域技术人员来说,本技术可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本技术的示例来提供对本技术更好的理解。
36.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
37.如背景技术所述,现有技术中确定服务间强弱依赖关系时影响业务连续性以及覆盖不全面的问题。为了解决上述问题,本技术实施例提供了一种服务关系的确定方法、装置、设备及计算机存储介质,该服务关系的确定方法可以通过获取微服务中各服务节点的关系信息,关系信息包括各服务节点的标识,以及各服务节点的依赖信息,并获取执行业务过程中生成的服务节点的单链表信息,单链表信息包括各级服务节点的标识和各级服务节点的服务层长度,接着,基于单链表信息和关系信息生成各服务节点的二叉树结构信息,二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。这样,无需依赖于系统故障即可确定微服务之间的依赖关系,降低了业务中断的风险,提升了系统稳定性,避免依赖故障影响用户体验。对每次业务执行都形成二叉树结构信息的分析数据,提高了微服务架构中服务节点之间强弱依赖关系的完整性。下面首先对本技术实施例所提供的服务关系的确定方法进行介绍。
38.图1示出了本技术一个实施例提供的服务关系的确定方法的流程示意图。
39.如图1所示,该服务关系的确定方法具体可以包括如下步骤:
40.s110,获取微服务中各服务节点的关系信息,关系信息可以包括各服务节点的标识,以及各服务节点的依赖信息。
41.服务节点的标识可以是同一个微服务架构中唯一标识服务节点的字符,可以包括数字、字母、符号等,例如服务1、服务a、服务s1等。各服务节点的依赖信息可以是各服务节点之间的强弱依赖关系信息。
42.在一些实施例中,关系信息可以包括与每个服务节点的具有强依赖关系的服务节点信息和具有弱依赖关系的服务节点信息的集合,其中,具有强依赖关系的服务节点信息变化时,服务节点具有影响关系;具有弱依赖关系的服务节点信息变化时,服务节点不具有影响关系。
43.示例性地,对微服务中各服务节点创建了一个专有数组结构,该数组结构包含3个部分:服务节点的标识、与服务节点具有强依赖关系的服务节点信息的集合(强依赖服务集合)、与服务节点具有弱依赖关系的服务节点信息的集合(弱依赖服务集合)。
44.下面以一个包含有服务a、服务b、服务c、服务d、服务e以及服务f的微服务架构为例进行说明,该微服务架构中各服务的数组结构如下表所示:
45.表1:微服务架构中各服务的数组结构
46.服务标识服务数组结构服务a[{服务标识,a},{强依赖服务集合,{b,c,}},{弱依赖服务集合,{d,}}]服务b[{服务标识,b},{强依赖服务集合,{}},{弱依赖服务集合,{}}]服务c[{服务标识,c},{强依赖服务集合,{e,}},{弱依赖服务集合,{f,}}]服务d[{服务标识,d},{强依赖服务集合,{}},{弱依赖服务集合,{}}]服务e[{服务标识,e},{强依赖服务集合,{}},{弱依赖服务集合,{}}]服务f[{服务标识,f},{强依赖服务集合,{}},{弱依赖服务集合,{}}]
[0047]
作为一个示例,如表1所示,服务a的强依赖服务集合中的所有服务都是服务a需要调用的服务,但强依赖服务集合中任一服务发生系统故障时,都会影响到服务a的可用性,导致服务a异常退出。弱依赖服务集合中的所有服务都是服务a需要调用的,但弱依赖服务集合中任一服务发生系统故障时,都不会影响到服务a的可用性,服务a可以继续运行。
[0048]
本技术实施例中,通过获取微服务中各服务节点的关系信息,关系信息包括与每个服务节点的具有强依赖关系的服务节点信息和具有弱依赖关系的服务节点信息的集合,便于业务执行过程中调用服务,并且提高了二叉树结构信息生成的准确性。
[0049]
s120,获取执行业务过程中生成的服务节点的单链表信息,单链表信息可以包括各级服务节点的标识,各级服务节点的服务层长度。
[0050]
各级服务节点的标识可以是业务执行的当前服务标识(identity document,id),即业务执行过程中正在执行的服务标识id。各级服务节点的服务层长度可以是业务执行过程中各级服务节点的执行层级,例如,每执行调度到新的服务时,服务层长度的值递增1,业务的头服务的服务层长度的值为1。
[0051]
示例性地,如图2所示,业务执行过程中生成的单链表结构可以包括各级服务节点的标识,以及各级服务节点的服务层长度,各级服务节点的标识例如可以是服务s1、服务s2、服务s3、
……
、服务sn,n为大于1的整数,各级服务节点的服务层长度例如可以是1、2、
3、
……
、n,n为大于1的整数。业务开始执行时生成业务执行过程单链表结构的头节点,即服务s1,随着业务逐步执行,调用各个微服务时,每次调用都显示在单链表结构中,业务执行完成后单链表结构创建完成。
[0052]
在一些实施例中,单链表信息还可以包括各节点的调用服务节点。
[0053]
调用服务节点可以是服务节点的父服务节点,若当前服务被该服务节点的调用服务节点调度,则该调用服务节点为当前服务的父服务节点,业务执行过程中的头服务的调用服务节点为空指针null。
[0054]
示例性地,如图2所示,业务执行过程中生成的单链表结构可以包括各节点的调用服务节点,各节点的调用服务节点例如可以是空指针null、服务s1、服务s2、
……
、服务s(n-1),n为大于1的整数,即服务s2节点的调用服务节点为服务s1,服务s1节点的调用服务节点为空指针null。通过单链表结构信息中各节点的调用服务节点,便于确定各服务节点之前的调度关系。
[0055]
另外,作为一个示例,如图3所示,基于表1中的微服务架构中各服务的数组结构,业务执行完成后可以生成4个单链表结构,单链表结构1包括服务a和服务b,单链表结构2包括服务a、服务c和服务e,单链表结构3包括服务a、服务c和服务f,单链表结构4包括服务a和服务d。
[0056]
s130,基于单链表信息和关系信息生成各服务节点的二叉树结构信息,二叉树结构信息可以包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。
[0057]
对执行业务过程中生成的服务节点的单链表信息进行合并,得到各服务节点的二叉树结构信息,其中,各服务节点的二叉树结构信息可以是各服务间的强弱依赖关系二叉树结构信息,服务节点在二叉树结构中的深度可以是业务执行过程中各级服务节点的执行层级,相邻服务节点的依赖信息可以包括相邻服务节点的强依赖关系信息和弱依赖关系信息。
[0058]
本技术实施例中,通过获取微服务中各服务节点的关系信息,关系信息包括各服务节点的标识,以及各服务节点的依赖信息,并获取执行业务过程中生成的服务节点的单链表信息,单链表信息包括各级服务节点的标识和各级服务节点的服务层长度,接着,基于单链表信息和关系信息生成各服务节点的二叉树结构信息,二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。这样,无需依赖于系统故障即可确定微服务之间的依赖关系,降低了业务中断的风险,提升了系统稳定性,避免依赖故障影响用户体验。对每次业务执行都形成二叉树结构信息的分析数据,提高了微服务架构中服务节点之间强弱依赖关系的完整性。
[0059]
在一些实施例中,该服务关系的确定方法还可以包括:
[0060]
展示二叉树结构信息,其中,二叉树结构信息中具有强依赖关系的服务节点间采用第一预设展示方式连接;二叉树结构信息中具有弱依赖关系的服务节点间采用第二预设展示方式连接。
[0061]
第一预设展示方式和第二预设展示方式可以是用户根据需要预先设置的展示方式。
[0062]
本技术实施例中,通过展示二叉树结构信息,二叉树结构信息中具有强依赖关系
的服务节点间采用第一预设展示方式连接,具有弱依赖关系的服务节点间采用第二预设展示方式连接,便于用户进行查看与分析,提高了用户的体验效果。
[0063]
在一些实施例中,第一预设展示方式包括具有强依赖关系的服务节点间以实线连接展示,第二预设展示方式包括具有弱依赖关系的服务节点间以虚线连接展示。
[0064]
作为一个示例,如图4所示,对微服务架构中业务执行过程生成的单链表结构进行合并,即可得到该微服务架构中各服务间的强弱依赖关系二叉树结构,该二叉树结构中具有强依赖关系的服务节点间以实线连接展示该二叉树结构中具有弱依赖关系的服务节点间以虚线连接展示。
[0065]
本技术实施例中,通过将具有强依赖关系的服务节点间以实线连接展示,将具有弱依赖关系的服务节点间以虚线连接展示,可以便于用户查看与分析服务节点间的强弱依赖关系,进一步提高了用户的体验效果。
[0066]
图5是根据一示例性实施例示出的一种服务关系的确定装置500的结构示意图。
[0067]
如图5所示,该服务关系的确定装置500可以包括:
[0068]
获取模块501,用于获取微服务中各服务节点的关系信息,关系信息包括各服务节点的标识,以及各服务节点的依赖信息;
[0069]
获取模块501,还用于获取执行业务过程中生成的服务节点的单链表信息,单链表信息包括各级服务节点的标识,各级服务节点的服务层长度;
[0070]
生成模块502,用于基于单链表信息和关系信息生成各服务节点的二叉树结构信息,二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。
[0071]
在一种实施方式中,关系信息包括与每个服务节点的具有强依赖关系的服务节点信息和具有弱依赖关系的服务节点信息的集合,其中,具有强依赖关系的服务节点信息变化时,服务节点具有影响关系;具有弱依赖关系的服务节点信息变化时,服务节点不具有影响关系。
[0072]
在一种实施方式中,单链表信息还包括各节点的调用服务节点。
[0073]
在一种实施方式中,该服务关系的确定装置500还可以包括展示模块;
[0074]
展示模块,用于展示二叉树结构信息,其中,二叉树结构信息中具有强依赖关系的服务节点间采用第一预设展示方式连接;二叉树结构信息中具有弱依赖关系的服务节点间采用第二预设展示方式连接。
[0075]
在一种实施方式中,第一预设展示方式包括具有强依赖关系的服务节点间以实线连接展示,第二预设展示方式包括具有弱依赖关系的服务节点间以虚线连接展示。
[0076]
由此,通过获取微服务中各服务节点的关系信息,关系信息包括各服务节点的标识,以及各服务节点的依赖信息,并获取执行业务过程中生成的服务节点的单链表信息,单链表信息包括各级服务节点的标识和各级服务节点的服务层长度,接着,基于单链表信息和关系信息生成各服务节点的二叉树结构信息,二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。这样,无需依赖于系统故障即可确定微服务之间的依赖关系,降低了业务中断的风险,提升了系统稳定性,并且可以对每次业务执行都形成二叉树结构信息的分析数据,提高了微服务架构中服务节点之间强弱依赖关系的完整性。
[0077]
图6示出了本技术实施例提供的电子的硬件结构示意图。
[0078]
在电子设备可以包括处理器601以及存储有计算机程序指令的存储器602。
[0079]
具体地,上述处理器601可以包括中央处理器(cpu),或者特定集成电路(application specific integrated circuit,asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
[0080]
存储器602可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器602可包括硬盘驱动器(hard disk drive,hdd)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(universal serial bus,usb)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器602可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器602可在综合网关容灾设备的内部或外部。在特定实施例中,存储器602是非易失性固态存储器。
[0081]
存储器可包括只读存储器(rom),随机存取存储器(ram),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本公开的一方面的方法所描述的操作。
[0082]
处理器601通过读取并执行存储器602中存储的计算机程序指令,以实现上述实施例中的任意一种服务关系的确定方法。
[0083]
在一个示例中,电子设备还可包括通信接口603和总线610。其中,如图6所示,处理器601、存储器602、通信接口603通过总线610连接并完成相互间的通信。
[0084]
通信接口603,主要用于实现本技术实施例中各模块、装置、单元和/或设备之间的通信。
[0085]
总线610包括硬件、软件或两者,将服务关系的确定设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(agp)或其他图形总线、增强工业标准架构(eisa)总线、前端总线(fsb)、超传输(ht)互连、工业标准架构(isa)总线、无限带宽互连、低引脚数(lpc)总线、存储器总线、微信道架构(mca)总线、外围组件互连(pci)总线、pci-express(pci-x)总线、串行高级技术附件(sata)总线、视频电子标准协会局部(vlb)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线610可包括一个或多个总线。尽管本技术实施例描述和示出了特定的总线,但本技术考虑任何合适的总线或互连。
[0086]
该电子设备可以基于获取微服务中各服务节点的关系信息,关系信息包括各服务节点的标识,以及各服务节点的依赖信息执行本技术实施例中的服务关系的确定方法,从而实现结合图1描述的服务关系的确定方法。
[0087]
另外,结合上述实施例中的服务关系的确定方法,本技术实施例可提供一种计算机存储介质来实现。该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种服务关系的确定方法。
[0088]
需要明确的是,本技术并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本技术的方法过程并不限于所描述和示出的具体步骤,本领域的
技术人员可以在领会本技术的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
[0089]
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(asic)、适当的固件、插件、功能卡等等。当以软件方式实现时,本技术的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、rom、闪存、可擦除rom(erom)、软盘、cd-rom、光盘、硬盘、光纤介质、射频(rf)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
[0090]
还需要说明的是,本技术中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本技术不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
[0091]
上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
[0092]
以上所述,仅为本技术的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本技术的保护范围之内。
技术特征:
1.一种服务关系的确定方法,其特征在于,包括:获取微服务中各服务节点的关系信息,所述关系信息包括各服务节点的标识,以及各服务节点的依赖信息;获取执行业务过程中生成的服务节点的单链表信息,所述单链表信息包括各级服务节点的标识,各级服务节点的服务层长度;基于所述单链表信息和所述关系信息生成所述各服务节点的二叉树结构信息,所述二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。2.根据权利要求1所述的方法,其特征在于,所述关系信息包括与每个服务节点的具有强依赖关系的服务节点信息和具有弱依赖关系的服务节点信息的集合,其中,具有强依赖关系的服务节点信息变化时,服务节点具有影响关系;具有弱依赖关系的服务节点信息变化时,服务节点不具有影响关系。3.根据权利要求1所述的方法,其特征在于,所述单链表信息还包括各节点的调用服务节点。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:展示二叉树结构信息,其中,所述二叉树结构信息中具有强依赖关系的服务节点间采用第一预设展示方式连接;所述二叉树结构信息中具有弱依赖关系的服务节点间采用第二展示方式连接。5.根据权利要求4所述的方法,其特征在于,所述第一预设展示方式包括具有强依赖关系的服务节点间以实线连接展示,所述第二预设展示方式包括具有弱依赖关系的服务节点间以虚线连接展示。6.一种服务关系的确定装置,其特征在于,所述装置包括:获取模块,用于获取微服务中各服务节点的关系信息,所述关系信息包括各服务节点的标识,以及各服务节点的依赖信息;所述获取模块,还用于获取执行业务过程中生成的服务节点的单链表信息,所述单链表信息包括各级服务节点的标识,各级服务节点的服务层长度;生成模块,用于基于所述单链表信息和所述关系信息生成所述各服务节点的二叉树结构信息,所述二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。7.根据权利要求6所述的装置,其特征在于,所述服务关系的确定装置还包括展示模块;所述展示模块,用于展示二叉树结构信息,其中,所述二叉树结构信息中具有强依赖关系的服务节点间采用第一预设展示方式连接;所述二叉树结构信息中具有弱依赖关系的服务节点间采用第二展示方式连接。8.一种电子设备,其特征在于,所述设备包括:处理器,以及存储有计算机程序指令的存储器;所述处理器读取并执行所述计算机程序指令,以实现如权利要求1-5任意一项所述的服务关系的确定方法。9.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-5任意一项所述的服务关系的确定
方法。10.一种计算机程序产品,其特征在于,所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行如权利要求1-5任意一项所述的服务关系的确定方法。
技术总结
本申请实施例提供了一种服务关系的确定方法、装置、设备及计算机存储介质,该服务关系的确定方法包括获取微服务中各服务节点的关系信息,关系信息包括各服务节点的标识,以及各服务节点的依赖信息;获取执行业务过程中生成的服务节点的单链表信息,单链表信息包括各级服务节点的标识,各级服务节点的服务层长度;基于单链表信息和关系信息生成各服务节点的二叉树结构信息,二叉树结构信息包括服务节点的标识、服务节点在二叉树结构中的深度、以及相邻服务节点的依赖信息。根据本申请实施例,降低了业务中断的风险,提升了系统稳定性,并且对每次业务执行都形成二叉树结构信息,提高了微服务架构中服务节点之间强弱依赖关系的完整性。的完整性。的完整性。
技术研发人员:王卉 雷中杰
受保护的技术使用者:中国移动通信集团有限公司
技术研发日:2022.03.24
技术公布日:2023/10/6
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种信号采样电路以及半导体存储器的制作方法 下一篇:冷却装置及航空发动机的制作方法