服务请求的追踪方法、装置及电子设备制造方法及图纸

技术编号:30206887 阅读:16 留言:0更新日期:2021-09-29 09:08
本申请是关于一种服务请求的追踪方法、装置及电子设备。该服务请求的追踪方法,包括:当前层节点接收服务请求,生成本层空间标记和确定父层空间标记;在向逻辑链路的下一层节点发送服务请求时,将所述当前层节点的本层空间标记发送给下一层节点作为该下一层节点的父层空间标记。本申请提供的技术方案,能够快速识别服务请求的上下级调用关系,更容易排查问题原因。原因。原因。

【技术实现步骤摘要】
服务请求的追踪方法、装置及电子设备


[0001]本申请涉及互联网
,尤其涉及一种服务请求的追踪方法、装置及电子设备。

技术介绍

[0002]RPC(Remote Procedure Call,远程过程调用)是一种通过网络从远程计算机程序上请求服务的协议。它允许运行于一台计算机的程序调用另一台计算机的子程序,而无需额外地为这个交互作用编程。
[0003]在相关技术中,当用户从浏览器打开一个网址,即发起一个服务请求,这个网址所包含的内容会调用多个API接口(Application Programming Interface,应用程序接口)。其中一个API接口可能会调用多个RPC服务,而其中一个RPC服务可能又会调用另一个RPC服务,所有这些RPC服务都会在服务器上分别对应留下了相应的日志,每一条日志上分别记录了该RPC服务的相关信息。为了便于区分用户发起的每一个服务请求,每一个服务请求具有唯一的TraceID(跟踪标记)。通过TraceID将一个逻辑链路下的所有的服务请求的详细日志串接起来。因此,该服务请求下的每个RPC服务对应的日志中均记载有相应的TraceID。
[0004]但是,由于一个服务请求可能涉及调用多个RPC服务,根据TraceID无法区分各RPC服务的上下级调用关系,在RPC服务出现问题时也很难排查问题原因。

技术实现思路

[0005]为克服相关技术中存在的问题,本申请提供一种服务请求的追踪方法、装置及电子设备,该服务请求的追踪方法、装置及电子设备,能够快速识别服务请求的上下级调用关系,更容易排查问题原因。
[0006]本申请第一方面提供一种服务请求的追踪方法,包括:
[0007]当前层节点接收服务请求,生成本层空间标记和确定父层空间标记;
[0008]在向逻辑链路的下一层节点发送服务请求时,将所述当前层节点的本层空间标记发送给下一层节点作为该下一层节点的父层空间标记。
[0009]在一个实施方式中,所述确定父层空间标记,包括:
[0010]如果当前层节点为第一层服务节点,生成标识第一层的父层空间标记。
[0011]在一个实施方式中,所述第一层的父层空间标记通过设定值标识为第一层的父层空间标记。
[0012]在一个实施方式中,所述确定父层空间标记,包括:
[0013]如果当前层节点为非第一层服务节点,从所述接收的服务请求中获取父层空间标记,所述父层空间标记为上一层服务节点生成的该上一层服务节点的本层空间标记。
[0014]在一个实施方式中,所述生成本层空间标记,包括:
[0015]根据至少一项以上参数生成本层空间标记,其中所述至少一项以上参数包括:服务进程号、时间戳、随机函数。
[0016]在一个实施方式中,所述本层空间标记或父层空间标记包括字符、数字及字母中的至少一种或多种的组合。
[0017]在一个实施方式中,所述服务请求中还包括用于唯一标识所述服务请求的跟踪标记。
[0018]本申请第二方面提供一种服务请求的追踪装置,所述装置包括:
[0019]处理模块,用于当前层节点接收服务请求,生成本层空间标记和确定父层空间标记;
[0020]发送模块,用于在向逻辑链路的下一层节点发送服务请求时,将所述处理模块生成的当前层节点的本层空间标记发送给下一层节点作为该下一层节点的父层空间标记。
[0021]在一个实施方式中,所述处理模块包括:
[0022]第一处理子模块,用于如果当前层节点为第一层服务节点,生成标识第一层的父层空间标记;或,
[0023]第二处理子模块,用于如果当前层节点为非第一层服务节点,从所述接收的服务请求中获取父层空间标记,所述父层空间标记为上一层服务节点生成的该上一层服务节点的本层空间标记。
[0024]本申请第三方面提供一种电子设备,包括:
[0025]处理器;以及
[0026]存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的方法。
[0027]本申请第四方面提供一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的方法。
[0028]本申请提供的技术方案可以包括以下有益效果:
[0029]本申请的技术方案,当前层节点接收服务请求,生成本层空间标记和确定父层空间标记;在向逻辑链路的下一层节点发送服务请求时,将所述当前层节点的本层空间标记发送给下一层节点作为该下一层节点的父层空间标记。由于在每层节点均设置本层空间标记和父层空间标记,其中父层空间标记可以标识出当前层节点与上一层节点的调用关系,而当前层的本层空间标记除了用于标识本层请求服务的位置,同时又会作为下一层节点的父层空间标记被该下一层节点所使用,可以标识出当前层节点与下一层节点的调用关系。而相关技术中在调用RPC服务的过程中,可能会出现绕圈调用或循环调用等错误,尤其是循环调用一个RPC服务会导致这里容易发生性能瓶颈,这样仅根据TraceID无法确定节点之间的上下级调用顺序,从而无法快速定位出错的位置。与相关技术相比,本申请提供的上述处理方式,就可以根据当前层的本层空间标记和父层空间标记,更快速识别出服务请求的上下级调用关系。当识别出上下级调用关系后,如果服务出现问题,根据识别出的上下级调用关系也更容易排查问题原因,也提高了排查效率。
[0030]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
[0031]通过结合附图对本申请示例性实施方式进行更详细的描述,本申请的上述以及其
它目的、特征和优势将变得更加明显,其中,在本申请示例性实施方式中,相同的参考标号通常代表相同部件。
[0032]图1是本申请一实施例示出的服务请求的追踪方法的流程示意图;
[0033]图2是本申请实施例所示的服务请求的追踪方法的应用架构示意图;
[0034]图3是本申请另一实施例示出的服务请求的追踪方法的流程示意图;
[0035]图4是本申请另一实施例示出的服务请求的追踪方法的流程示意图;
[0036]图5是本申请另一实施例示出的服务请求的追踪方法的流程示意图;
[0037]图6是本申请一实施例示出的节点RPC A生成本层空间标记和生成标识第一层的父层空间标记的示意图;
[0038]图7是本申请一实施例示出的节点RPC B生成本层空间标记和获取父层空间标记的示意图;
[0039]图8是本申请一实施例示出的节点RPC C生成本层空间标记和获取父层空间标记的示意图;
[0040]图9是本申请实施例示出的服务请求的追踪装置的结构示意图;
[0041]图10是本申请另一实施例示出的服务请求的追踪装置的结构示意图;
[0042]图11是本申请实施例示出的电子设备的结构示意图。
具体实施方式
[0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种服务请求的追踪方法,其特征在于,包括:当前层节点接收服务请求,生成本层空间标记和确定父层空间标记;在向逻辑链路的下一层节点发送服务请求时,将所述当前层节点的本层空间标记发送给下一层节点作为该下一层节点的父层空间标记。2.根据权利要求1所述的方法,其特征在于,所述确定父层空间标记,包括:如果当前层节点为第一层服务节点,生成标识第一层的父层空间标记。3.根据权利要求2所述的方法,其特征在于:所述第一层的父层空间标记通过设定值标识为第一层的父层空间标记。4.根据权利要求1所述的方法,其特征在于,所述确定父层空间标记,包括:如果当前层节点为非第一层服务节点,从所述接收的服务请求中获取父层空间标记,所述父层空间标记为上一层服务节点生成的该上一层服务节点的本层空间标记。5.根据权利要求1所述的方法,其特征在于,所述生成本层空间标记,包括:根据至少一项以上参数生成本层空间标记,其中所述至少一项以上参数包括:服务进程号、时间戳、随机函数。6.根据权利要求1至5任一项所述的方法,其特征在于:所述本层空间标记或父层空间标记包括字符、数字及字...

【专利技术属性】
技术研发人员:王晶楠
申请(专利权)人:北京新氧万维科技咨询有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1