[发明专利]分布式系统中调用链路的追踪方法及装置在审
申请号: | 201610990310.1 | 申请日: | 2016-11-10 |
公开(公告)号: | CN106603270A | 公开(公告)日: | 2017-04-26 |
发明(设计)人: | 周林军 | 申请(专利权)人: | 广州酷狗计算机科技有限公司 |
主分类号: | H04L12/24 | 分类号: | H04L12/24;H04L29/08 |
代理公司: | 北京三高永信知识产权代理有限责任公司11138 | 代理人: | 郭晶 |
地址: | 510000 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 系统 调用 追踪 方法 装置 | ||
技术领域
本发明涉及互联网技术领域,特别涉及一种分布式系统中调用链路的追踪方法及装置
背景技术
在互联网技术领域,分布式系统包括多个子系统,每个子系统具有不同的功能,多个子系统通过对用户的服务请求消息进行处理,可为用户提供服务。如果按照调用顺序将被调用的子系统组成一个调用链路,通过对调用链路进行追踪及分析,可查找出系统性能瓶颈,从而通过优化系统配置,提高系统的稳定性和可用性。
为了实现对分布式系统中调用链路进行追踪,现有技术通过拦截上级子系统的服务请求消息,获取该服务请求消息中的链路消息,该链路消息包括调用链路标识和链路序列标识,该链路序列标识用于表示每个子系统被调用的次序,按照次序修改链路消息中的链路序列标识,得到修改后的链路消息,将修改后的链路消息存储回拦截到的服务请求消息中,将更新后的服务请求消息发送至下级子系统,并将修改后的链路消息发送至系统中唯一的消息处理服务器,由该消息处理服务器对多个被调用的子系统发送的修改后的链路消息进行分析,得到多个分析结果,进而通过对多个分析结果进行合并,得到本次服务的调用链路。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
在对分布式系统中调用链路的追踪过程中,每个被调用的子系统均将修改后的链路消息发送至消息处理服务器,这无形中增加了消息处理服务器的处理压力,从而降低了系统性能。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种分布式系统中调用链路的追踪方法及装置,技术方案如下:
一方面,提供了一种分布式系统中调用链路的追踪方法,所述分布式系统包括多个子系统,所述方法包括:
获取第一子系统的服务请求消息;
根据所述第一子系统的服务请求消息,生成第二子系统的链路消息,所述第二子系统的链路消息包括调用链路标识、第一子系统的链路消息标识及第二子系统的链路消息标识;
从多个消息处理服务器中,确定所述第二子系统对应的目标消息处理服务器;
将所述第二子系统的链路消息发送至所述目标消息处理服务器进行存储。
在本发明的另一个实施例中,所述根据所述第一子系统的服务请求消息,生成第二子系统的链路消息,包括:
从所述第一子系统的服务请求消息中,获取所述第一子系统的调用信息,所述第一子系统的调用信息包括所述调用链路标识、所述第一子系统的链路消息标识及所述第二系统的链路消息标识;
根据所述第一子系统的调用信息,生成所述第二子系统的链路消息。
在本发明的另一个实施例中,所述从所述第一子系统的服务请求消息中,获取所述第一子系统的调用信息之前,还包括:
当检测到所述第一子系统调用所述第二子系统的服务时,触发所述第一子系统为所述第二子系统生成所述第二子系统的链路消息标识;
将所述第二子系统的链路消息标识存储在所述第一子系统的调用信息中。
在本发明的另一个实施例中,所述从多个消息处理服务器中,确定所述第二子系统对应的目标消息处理服务器,包括:
计算每个消息服务器与所述第二子系统之间的距离;
根据计算结果,选取与所述第二子系统距离最近的消息处理服务器,作为所述目标消息处理服务器。
在本发明的另一个实施例中,所述方法还包括:
接收调用链路查询请求,所述调用链路查询请求包括所述调用链路标识;
根据所述调用链路标识,从各个被调用的子系统所对应的消息处理服务器中,获取所述调用链路标识对应的子调用链路;
将获取到的多个子调用链路进行合并,得到所述调用链路标识对应的调用链路。
另一方面,提供了一种分布式系统中调用链路的追踪装置,所述分布式系统包括多个子系统,所述装置包括:
第一获取模块,用于获取第一子系统的服务请求消息;
消息生成模块,用于根据所述第一子系统的服务请求消息,生成第二子系统的链路消息,所述第二子系统的链路消息包括调用链路标识、第一子系统的链路消息标识及第二子系统的链路消息标识;
确定模块,用于从多个消息处理服务器中,确定所述第二子系统对应的目标消息处理服务器;
发送模块,用于将所述第二子系统的链路消息发送至所述目标消息处理服务器进行存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州酷狗计算机科技有限公司,未经广州酷狗计算机科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610990310.1/2.html,转载请声明来源钻瓜专利网。