一种用于分布式系统的链路追踪方法、装置和系统制造方法及图纸

技术编号:21059638 阅读:33 留言:0更新日期:2019-05-08 06:39
本申请公开了一种用于分布式系统的链路追踪方法,其包括:在远程过程调用的调用请求经过计算设备节点时,生成本节点的追踪标记;根据本节点的追踪标记和本节点对子节点的调用请求,生成子节点追踪数据;将所述子节点追踪数据封装至本节点对子节点的远程调用请求中;向所述子节点发送已封装数据的调用请求;子节点接收已封装数据的调用请求,并根据调用请求生成子节点追踪标记;对于任意本节点及其子节点重复上述步骤,直至事务的各调用请求完成;在事务的各调用请求或单次请求完成后,将本节点的追踪标记和子节点的追踪标记上报;其中,所述计算设备节点称为本节点。本申请同时涉及一种用于分布式系统的链路追踪装置和系统。

A Link Tracking Method, Device and System for Distributed Systems

【技术实现步骤摘要】
一种用于分布式系统的链路追踪方法、装置和系统
本申请涉及分布式系统领域,具体涉及一种用于分布式系统的链路追踪方法。本申请同时涉及一种用于分布式系统的链路追踪装置和系统。
技术介绍
随着互联网的发展,分布式系统解决了服务器处理的数据庞大、访问请求频繁的问题。分布式系统(distributedsystem)是建立在网络之上的软件系统,系统拥有多种通用的物理和逻辑资源,可以动态的分配任务,分散的物理和逻辑资源通过计算机网络实现信息交换。随着云技术的发展,运营商提供的是接入云端的网络,设备商提供的是大量的计算、存储和网络资源。这种情况下,系统中的节点越来越多,应答请求所经过的路径越来越复杂,即对于分布式系统的管理,特别是全链路追踪更加困难。其中,全链路追踪是记录或确定分布式服务在一次特定的请求中调用路径及涉及的全部节点的信息。链路追踪是针对调用请求的特定路径及涉及的部分节点的信息的确定或记录。传统的分布式系统的链路追踪主要是依靠程序主动打点上报,需要开发人员写大量的代码实现功能,且切入点不能保证正确性。传统的APM(ApplicationPerformanceManagement,应用性能管本文档来自技高网...

【技术保护点】
1.一种用于分布式系统的链路追踪方法,其特征在于,包括:在远程过程调用的调用请求经过计算设备节点时,生成本节点的追踪标记;根据本节点的追踪标记和本节点对子节点的调用请求,生成子节点追踪数据;将所述子节点追踪数据封装至本节点对子节点的远程调用请求中;向所述子节点发送已封装数据的调用请求;子节点接收已封装数据的调用请求,并根据调用请求生成子节点追踪标记;对于任意本节点及其子节点重复上述步骤,直至事务的各调用请求完成;在事务的各调用请求或单次请求完成后,将本节点的追踪标记和子节点的追踪标记上报;其中,所述计算设备节点称为本节点。

【技术特征摘要】
1.一种用于分布式系统的链路追踪方法,其特征在于,包括:在远程过程调用的调用请求经过计算设备节点时,生成本节点的追踪标记;根据本节点的追踪标记和本节点对子节点的调用请求,生成子节点追踪数据;将所述子节点追踪数据封装至本节点对子节点的远程调用请求中;向所述子节点发送已封装数据的调用请求;子节点接收已封装数据的调用请求,并根据调用请求生成子节点追踪标记;对于任意本节点及其子节点重复上述步骤,直至事务的各调用请求完成;在事务的各调用请求或单次请求完成后,将本节点的追踪标记和子节点的追踪标记上报;其中,所述计算设备节点称为本节点。2.根据权利要求1所述的用于分布式系统的链路追踪方法,其特征在于:若所述本节点为中间节点,所述生成本节点的追踪标记包括:接收父节点对本节点的远程调用请求;解析所述远程调用请求,获得父节点为本节点生成的追踪数据;根据所述追踪数据生成本节点的追踪标记。3.根据权利要求2所述的用于分布式系统的链路追踪方法,其特征在于:所述本节点追踪标记包括一次调用任务的任务标识、本节点的父节点标签和本节点标签;其中,所述本节点的父节点标签和本节点标签均称为追踪标签,所述追踪标签为一次调用任务中的不同节点的代号,用于表征并区分在一次调用任务中的不同节点。4.根据权利要求3所述的用于分布式系统的链路追踪方法,其特征在于,所述根据本节点的追踪标记和本节点对子节点的调用请求,生成子节点追踪数据包括:根据所述本节点的追踪标记获得追踪标签;根据所述本节点对子节点的调用请求,创建子节点标签;将所述本节点的追踪标签和子节点标签配置为子节点追踪数据。5.根据权利要求1或4所述的用于分布式系统的链路追踪方法,其特征在于,所述将所述子节点追踪数据封装至本节点对子节点的远程调用请求中包括:将所述子节点追踪数据封装至本节点对子节点的远程调用请求的头文件中。6.根据权利要求4所述的用于分布式系统的链路追踪方法,其特征在于:所述将所述子节点追踪数据封装至本节点对子节点的远程调用请求中包括:将所述子节点追踪数据封装至本节点对子节点的远程调用请求的头文件中;其中所述将所述子节点追踪数据封装至本节点对子节点的远程调用请求的头文件中,包括:将所述追踪标签写入本节点对子节点的远程调用请求的头文件中;将所述本节点标签作为子节点的父节点标签写入本节点对子节点的远程调用请求的头文件中;将所述子节点标签写入本节点对子节点的远程调用请求的头文件中。7.根据权利要求1或2或3或4或6所述的用于分布式系统的链路追踪方法,其特征在于:所述子节点接收已封装数据的调用请求,并根据调用请求生成子节点追踪标记包括:子节点接收已封装数据的调用请求;解析所述调用请求,获得所述子节点追踪数据;根据所述子节点追踪数据获得子节点追踪标记。8.根据权利要求7所述的用于分布式系统的链路追踪方法,其特征在于:解析所述调用请求,获得所述子节点追踪数据包括:解析所述调用请求的头文件;由所述头文件获取所述子节点追踪数据。9.根据权利要求1所述的用于分布式系统的链路追踪方法,其特征在于:针对每一节点,在生成该节点的追踪标签后,在MVC控制器中记录所述追踪数据。10.根据权利要求1或2或3或4或6所述的用于分布式系统的链路追踪方法,其特征在于:所述每一节点均为采用Java语言的Tomcat服务器;所述远程调用请求为基于http协议的调用请求。11.根据权利要求1所述的用于分布式系统的链路追踪方法,其特征在于:若所述本节点为根节点,所述生成本节点的追踪标记包括:根据针对子节点的调用请求,为本次调用创建追踪标记。12.根据权利要求11所述的用于分布式系统的链...

【专利技术属性】
技术研发人员:孙忠英
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1