CN116820652A - 基于Nacos实现服务调用链路可视化的方法及装置 - Google Patents
基于Nacos实现服务调用链路可视化的方法及装置 Download PDFInfo
- Publication number
- CN116820652A CN116820652A CN202310798256.0A CN202310798256A CN116820652A CN 116820652 A CN116820652 A CN 116820652A CN 202310798256 A CN202310798256 A CN 202310798256A CN 116820652 A CN116820652 A CN 116820652A
- Authority
- CN
- China
- Prior art keywords
- service
- nacos
- link
- current
- visualization based
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 238000012800 visualization Methods 0.000 title claims abstract description 41
- 238000010586 diagram Methods 0.000 claims abstract description 22
- 239000007858 starting material Substances 0.000 claims description 11
- 230000001419 dependent effect Effects 0.000 claims description 10
- 230000000007 visual effect Effects 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 8
- 238000011161 development Methods 0.000 abstract description 6
- 238000012360 testing method Methods 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 11
- 230000018109 developmental process Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000033772 system development Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种基于Nacos实现服务调用链路可视化的方法及装置,所述方法包括:获取服务注册列表;根据所述服务注册列表明确当前服务类型,并根据所述当前服务类型确定当前服务调用方与被调用方,其中所述当前服务类型包括网关或普通服务;根据调用关系生成链路图,并将所述链路图通过前端页面进行可视化展示。本申请所述的基于Nacos实现服务调用链路可视化的方法及装置能够用于开发测试过程中识别调用链路,提前发现不合理的服务依赖,保证系统的调用链路层次清晰。
Description
技术领域
本申请属于服务调用技术领域,尤其涉及一种基于Nacos实现服务调用链路可视化的方法及装置。
背景技术
随着业务系统的飞快发展以及微服务技术的应用,各个系统被拆分为多个子服务,在各个子服务中均会依赖其他服务所提供的API接口,造成调用链路错综复杂,再加上不同子服务都由不同开发团队开发,如果没有对服务调用链路加以规范,很容易造成调用混乱的情况。同时由于服务提供方所提供的接口拥有众多服务调用方,如果接口发生变更或者迭代升级时,亦需通知服务调用方检查业务。
目前主流的服务链路监控框架如Skywalking、Sleuth等只是API在真实被调用时监控各个系统的上下游调用链路信息,偏向于事后追踪,无法做到在开发测试阶段识别调用链路,及时规避调用混乱的问题。
发明内容
有鉴于此,本申请旨在提出一种基于Nacos实现服务调用链路可视化的方法及装置,以解决服务链路监控框架仅是API在真实被调用时监控各个系统的上下游调用链路信息,偏向于事后追踪,无法做到在开发测试阶段识别调用链路,及时规避调用混乱的问题。
为达到上述目的,本申请的技术方案是这样实现的:
第一方面,本申请提供了一种基于Nacos实现服务调用链路可视化的方法,所述方法包括:
获取服务注册列表;
根据所述服务注册列表明确当前服务类型,并根据所述当前服务类型确定当前服务调用方与被调用方,其中所述当前服务类型包括网关或普通服务;
根据调用关系生成链路图,并将所述链路图通过前端页面进行可视化展示。
进一步地,所述获取服务注册列表包括:
自定义SpringBoot Starter组件,各个子服务通过Maven依赖管理工具引用所述SpringBoot Starter组件;
各个子服务启动时,从Spring容器中获取Nacos注册中心的DiscoveryClient对象以及拥有@FeignClient注解的对象集合;其中,所述DiscoveryClient表示服务发现操作对象,FeignClient表示服务之间调用的操作类。
进一步地,所述根据所述服务注册列表明确当前服务类型,并根据所述当前服务类型确定当前服务调用方与被调用方,其中所述当前服务类型包括网关或普通服务,包括:
识别各个子服务所使用的FeignClient;
解析所述FeignClient中的value值或Url作为所依赖的子服务的唯一标识,通过所述唯一标识得到所述服务列表对应的子服务。
进一步地,响应于获取普通子服务信息,通过DiscoveryClient.getInstances方法获取注册至Nacos注册中心的所有服务,并获取其服务ID、服务IP、服务端口。
进一步地,响应于获取API网关路由信息,判断当前Spring容器中是否存在RouteDefinition对象,如果存在则判定为API网关,并获取RouteDefinition定义的所有服务路由信息。
进一步地,依次解析@FeignClient注解的对象集合,从FeignClient注解中读取相应的属性值,包含服务提供方ID、服务提供方名称、服务提供方Url参数;
将当前服务ID与所依赖的服务ID的一对多关联关系保存至内存中。
进一步地,所述根据调用关系生成链路图,并将所述链路图通过前端页面进行可视化展示,包括:
以API网关为顶层节点,所有路由清单为二级节点,通过所述当前服务ID和所依赖的服务ID采用遍历的形式获取所有下级节点,直至遍历到最下游节点,以生成链路图;
前端页面通过图可视化引擎antv G6将所述链路图进行可视化展示,以展示各节点之间的链路状态。
第二方面,基于同一发明构思,本申请还提供了一种基于Nacos实现服务调用链路可视化的装置,所述装置包括:
获取模块,被配置为获取服务注册列表;
服务类型确定模块,被配置为根据所述服务注册列表明确当前服务类型,并根据所述当前服务类型确定当前服务调用方与被调用方,其中所述当前服务类型包括网关或普通服务;
可视化模块,被配置为根据调用关系生成链路图,并将所述链路图通过前端页面进行可视化展示。
第三方面,基于同一发明构思,本申请还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的一种基于Nacos实现服务调用链路可视化的方法。
第四方面,基于同一发明构思,本申请还提供了一种非暂态计算机可读存储介质,其中,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如第一方面所述的一种基于Nacos实现服务调用链路可视化的方法。
相对于现有技术,本申请所述的基于Nacos实现服务调用链路可视化的方法及装置具有以下有益效果:
本申请所述的基于Nacos实现服务调用链路可视化的方法及装置,所述方法通过获取服务注册列表,根据服务注册列表明确当前服务类型,并根据当前服务类型确定当前服务调用方与被调用方,根据调用关系生成链路图,并将链路图通过前端页面进行可视化展示,本申请可用于开发测试过程中识别调用链路,提前发现不合理的服务依赖,保证系统的调用链路层次清晰。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例所述的基于Nacos实现服务调用链路可视化的方法流程图;
图2为本申请实施例所述的基于Nacos实现服务调用链路可视化装置结构示意图;
图3为本申请实施例所述的电子设备的结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本申请进一步详细说明。
需要说明的是,除非另外定义,本申请实施例使用的技术术语或者科学术语应当为本申请所属领域内具有一般技能的人士所理解的通常意义。本申请实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
如背景技术部分所述,目前系统大多采用多层架构、如基础服务层、聚合服务层、业务系统等多层结构。聚合服务层通常会提供若干基础服务的封装及增强。在系统开发的过程中经常由于开发人员对业务或者系统的理解不够深入,可能会出现业务系统即依赖于基础服务层又依赖于聚合服务层的情况,人为的增加了系统的复杂程度。
基于此,本申请中的一个或多个实施例中提供了基于Nacos实现服务调用链路可视化的方法。
以下结合附图详细说明本申请的实施例。
请参阅图1所示,本申请一个实施例的基于Nacos实现服务调用链路可视化的方法,包括以下步骤:
步骤S101、获取服务注册列表。
在一些实施方式中,自定义SpringBoot Starter组件,各个子服务通过Maven依赖管理工具引用此SpringBoot Starter组件;
各个子服务启动时,从Spring容器中获取Nacos注册中心的DiscoveryClient对象以及拥有@FeignClient注解的对象集合;DiscoveryClient代表的是服务发现操作对象,FeignClient代表服务之间调用的操作类。
具体地,SpringBoot Starter组件,是一种可以快速构建SpringBoot应用程序的工具,它封装了一些常用的配置和依赖,使得开发者可以快速地构建SpringBoot应用程序。在自定义SpringBoot Starter组件时,需要定义一些配置类和依赖,将它们打包成一个Maven依赖包。
各个子服务需要通过Maven依赖管理工具引用这个SpringBoot Starter组件,在这个过程中,子服务会自动获取到SpringBoot Starter组件中定义的配置和依赖。
在子服务启动时,需要从Spring容器中获取Nacos注册中心的DiscoveryClient对象以及拥有@FeignClient注解的对象集合。这个过程可以通过在SpringBoot Starter组件中定义一些配置类和启动类来实现。在配置类中定义Nacos注册中心的相关配置,启动类中定义了对@FeignClient注解的扫描和处理。
具体来说,在配置类中,可以使用@EnableDiscoveryClient注解来启用服务发现功能,并使用@NacosPropertySource注解来指定Nacos配置中心的配置文件。在启动类中,可以使用@FeignClientScan注解来扫描所有的@FeignClient注解,并将这些对象注入到Spring容器中。
在子服务中,直接从Spring容器中获取到Nacos注册中心的DiscoveryClient对象以及拥有@FeignClient注解的对象集合,即可方便地进行服务的发现和调用。
步骤S102、根据所述服务注册列表明确当前服务类型,并根据所述当前服务类型确定当前服务调用方与被调用方,其中所述当前服务类型包括网关或普通服务。
在一些实施方式中,识别各个子服务所使用的FeignClient;
解析FeignClient中的value值或Url作为所依赖的子服务的唯一标识,通过唯一标识得到服务列表对应的子服务。
获取普通的子服务相应信息;通过DiscoveryClient.getInstances方法获取注册至Nacos注册中心的所有服务,并获取其服务ID、服务IP、服务端口等字段;
获取API网关相关路由信息;Spring Cloud Gateway作为API网关,一般是最上游节点即整条链路的顶层节点,因此,需要对API网关进行特殊处理,即判断当前Spring容器中是否存在RouteDefinition对象,如果存在则判定为API网关,并获取RouteDefinition定义的所有服务路由信息。
依次解析@FeignClient注解的对象集合,从FeignClient注解中读取相应的属性值,包含服务提供方ID、服务提供方名称、服务提供方Url等参数,将当前服务ID与所依赖的服务ID的一对多关联关系保存至内存中。
步骤S103、根据调用关系生成链路图,并将所述链路图通过前端页面进行可视化展示。
在一些实施方式中,以API网关为顶层节点,所有路由清单为二级节点,然后通过第5步中获取到的服务ID与所依赖的服务ID采用遍历的形式获取所有下级节点,直到遍历到最下游节点。
前端根据此链路数据,通过antv G6(G6是一个简单、易用、完备的图可视化引擎,它在高定制能力的基础上,提供了一系列设计优雅、便于使用的图可视化解决方案)实现节点之间的链路状态。
具体地,在这在这个过程中,API网关作为顶层节点,所有路由清单作为二级节点,通过获取到的服务ID与所依赖的服务ID,遍历获取所有下级节点,直到遍历到最下游节点。
这个过程可以通过调用注册中心的API来实现,比如可以使用Nacos注册中心的API来获取服务的依赖关系。
具体来说,在API网关中,可以定义一个定时任务,定时从Nacos注册中心获取所有服务的列表,并将它们转换成路由清单的形式,作为二级节点。
通过遍历服务的依赖关系,递归获取所有下级节点,在递归的过程中,可以将已经遍历过的节点缓存起来,避免重复遍历,最终,可以得到一个完整的节点链路数据,包含所有的服务节点和它们之间的依赖关系。
前端可以通过antv G6来实现节点之间的链路状态的可视化展示,将节点和边的数据传递给G6图可视化引擎,然后使用G6提供的各种布局算法和样式配置来实现图的渲染和交互;通过这种方式,前端用户可以直观地了解各个服务节点之间的关系,以及它们的运行状态。
本申请所述基于Nacos实现服务调用链路可视化的方法采用Spring Cloud构建的微服务,使用Nacos作为注册中心、使用Spring Cloud OpenFeign进行服务之间的接口调用,在实现方式上,通过Nacos注册中心的元数据获取到服务列表,并识别各个子服务所使用的FeignClient,通过解析FeignClient中的value值或Url作为所依赖的子服务的唯一标识,并通过此唯一标识找到Nacos中的服务列表中所对应的子服务,通过上下游之间的依赖关系生成调用链路数据,并提供前端页面将这些数据进行可视化。本申请可用于开发测试过程中识别调用链路,提前发现不合理的服务依赖,保证系统的调用链路层次清晰。
需要说明的是,上述对本申请的一些实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于上述实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
基于同一发明构思,与上述任意实施例方法相对应的,本申请的实施例还提供了一种基于Nacos实现服务调用链路可视化的装置。
如图2所示,所述一种基于Nacos实现服务调用链路可视化的装置,其特征在于,所述装置包括:
获取模块11,被配置为获取服务注册列表;
服务类型确定模块12,被配置为根据服务注册列表明确当前服务类型,并根据当前服务类型确定当前服务调用方与被调用方,其中当前服务类型包括网关或普通服务;
可视化模块13,被配置为根据调用关系生成链路图,并将链路图通过前端页面进行可视化展示。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请的实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
上述实施例的装置用于实现前述任一实施例中相应的基于Nacos实现服务调用链路可视化的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请的实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上任意一实施例所述的基于Nacos实现服务调用链路可视化的方法。
图3示出了本实施例所提供的一种更为具体的电子设备硬件结构示意图,该设备可以包括:处理器1010、存储器1020、输入/输出接口1030、通信接口1040和总线1050。其中处理器1010、存储器1020、输入/输出接口1030和通信接口1040通过总线1050实现彼此之间在设备内部的通信连接。
处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本说明书实施例所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储操作系统和其他应用程序,在通过软件或者固件来实现本说明书实施例所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1030用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
通信接口1040用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1050包括一通路,在设备的各个组件(例如处理器1010、存储器1020、输入/输出接口1030和通信接口1040)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1010、存储器1020、输入/输出接口1030、通信接口1040以及总线1050,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本说明书实施例方案所必需的组件,而不必包含图中所示的全部组件。
上述实施例的电子设备用于实现前述任一实施例中相应的基于Nacos实现服务调用链路可视化的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
基于同一发明构思,与上述任意实施例方法相对应的,本申请还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行如上任一实施例所述的基于Nacos实现服务调用链路可视化的方法。
本实施例的计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
上述实施例的存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的基于Nacos实现服务调用链路可视化的方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本申请的范围(包括权利要求)被限于这些例子;在本申请的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本申请实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。
另外,为简化说明和讨论,并且为了不会使本申请实施例难以理解,在所提供的附图中可以示出或可以不示出与集成电路(IC)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本申请实施例难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本申请实施例的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本申请的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本申请实施例。因此,这些描述应被认为是说明性的而不是限制性的。
尽管已经结合了本申请的具体实施例对本申请进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本申请实施例旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本申请实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种基于Nacos实现服务调用链路可视化的方法,其特征在于,所述方法包括:
获取服务注册列表;
根据所述服务注册列表明确当前服务类型,并根据所述当前服务类型确定当前服务调用方与被调用方,其中所述当前服务类型包括网关或普通服务;
根据调用关系生成链路图,并将所述链路图通过前端页面进行可视化展示。
2.根据权利要求1所述的一种基于Nacos实现服务调用链路可视化的方法,其特征在于,所述获取服务注册列表,包括:
自定义SpringBoot Starter组件,各个子服务通过Maven依赖管理工具引用所述SpringBoot Starter组件;
各个子服务启动时,从Spring容器中获取Nacos注册中心的DiscoveryClient对象以及拥有@FeignClient注解的对象集合;其中,所述DiscoveryClient表示服务发现操作对象,FeignClient表示服务之间调用的操作类。
3.根据权利要求2所述的一种基于Nacos实现服务调用链路可视化的方法,其特征在于,所述根据所述服务注册列表明确当前服务类型,并根据所述当前服务类型确定当前服务调用方与被调用方,其中所述当前服务类型包括网关或普通服务,包括:
识别各个子服务所使用的FeignClient;
解析所述FeignClient中的value值或Url作为所依赖的子服务的唯一标识,通过所述唯一标识得到所述服务列表对应的子服务。
4.根据权利要求3所述的一种基于Nacos实现服务调用链路可视化的方法,其特征在于:
响应于获取普通子服务信息,通过DiscoveryClient.getInstances方法获取注册至Nacos注册中心的所有服务,并获取其服务ID、服务IP、服务端口。
5.根据权利要求3所述的一种基于Nacos实现服务调用链路可视化的方法,其特征在于:
响应于获取API网关路由信息,判断当前Spring容器中是否存在RouteDefinition对象,如果存在则判定为API网关,并获取RouteDefinition定义的所有服务路由信息。
6.根据权利要求5所述的一种基于Nacos实现服务调用链路可视化的方法,其特征在于:
依次解析@FeignClient注解的对象集合,从FeignClient注解中读取相应的属性值,包含服务提供方ID、服务提供方名称、服务提供方Url参数;
将当前服务ID与所依赖的服务ID的一对多关联关系保存至内存中。
7.根据权利要求6所述的一种基于Nacos实现服务调用链路可视化的方法,其特征在于,所述根据调用关系生成链路图,并将所述链路图通过前端页面进行可视化展示,包括:
以API网关为顶层节点,所有路由清单为二级节点,通过所述当前服务ID和所依赖的服务ID采用遍历的形式获取所有下级节点,直至遍历到最下游节点,以生成链路图;
前端页面通过图可视化引擎antv G6将所述链路图进行可视化展示,以展示各节点之间的链路状态。
8.一种基于Nacos实现服务调用链路可视化的装置,其特征在于,所述装置包括:
获取模块,被配置为获取服务注册列表;
服务类型确定模块,被配置为根据所述服务注册列表明确当前服务类型,并根据所述当前服务类型确定当前服务调用方与被调用方,其中所述当前服务类型包括网关或普通服务;
可视化模块,被配置为根据调用关系生成链路图,并将所述链路图通过前端页面进行可视化展示。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-7任一项所述的一种基于Nacos实现服务调用链路可视化的方法。
10.一种非暂态计算机可读存储介质,其特征在于,其中,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行权利要求1-7任一项所述的一种基于Nacos实现服务调用链路可视化的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310798256.0A CN116820652A (zh) | 2023-06-30 | 2023-06-30 | 基于Nacos实现服务调用链路可视化的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310798256.0A CN116820652A (zh) | 2023-06-30 | 2023-06-30 | 基于Nacos实现服务调用链路可视化的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116820652A true CN116820652A (zh) | 2023-09-29 |
Family
ID=88125541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310798256.0A Pending CN116820652A (zh) | 2023-06-30 | 2023-06-30 | 基于Nacos实现服务调用链路可视化的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116820652A (zh) |
-
2023
- 2023-06-30 CN CN202310798256.0A patent/CN116820652A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160092350A1 (en) | Callpath finder | |
US8271942B2 (en) | Defining a single annotation model | |
CN110764748B (zh) | 代码调用方法、装置、终端及存储介质 | |
CN114035805B (zh) | 用于预编译器的代码转换方法、装置、介质及设备 | |
CN111796865B (zh) | 一种字节码文件修改方法、装置、终端设备及介质 | |
CN111581069A (zh) | 一种数据处理方法及装置 | |
CN110888794B (zh) | 接口测试方法和装置 | |
CN113703751A (zh) | 工业指标组件的图形化生成方法、装置和电子设备 | |
CN107368293B (zh) | 页面结构生成方法、页面截图上报方法、装置及系统 | |
CN112631590A (zh) | 组件库生成方法、装置、电子设备和计算机可读介质 | |
CN111488144B (zh) | 一种数据处理方法以及设备 | |
CN115618363B (zh) | 漏洞路径的挖掘方法及相关设备 | |
CN116820652A (zh) | 基于Nacos实现服务调用链路可视化的方法及装置 | |
WO2023273621A1 (zh) | 脚本生成方法、装置、设备及介质 | |
CN113742103A (zh) | 跨数据源的服务实现方法及装置、电子设备 | |
CN110837367B (zh) | 用户界面处理方法、装置及电子设备 | |
US9244657B2 (en) | System and method for an object instance acquirer | |
CN112379915B (zh) | 一种源代码处理方法及装置 | |
CN115809060B (zh) | 一种Openlayers地图构建方法、装置及电子设备 | |
CN114047922B (zh) | 用于预编译器的代码转换方法、装置、介质及设备 | |
CN112445576B (zh) | 一种屏蔽业务差异的设备调用方法及相关设备 | |
CN112084003B (zh) | 一种隔离数据的方法、装置、介质和电子设备 | |
CN116661780A (zh) | 一种局部动态可视化页面的实现方法、装置及存储介质 | |
CN116719528A (zh) | 基于抽象语法树的小程序数据流分析方法及相关设备 | |
CN116126536A (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 |