[发明专利]微服务链路追踪的处理方法、协调设备及服务网关在审
申请号: | 202111412030.X | 申请日: | 2021-11-25 |
公开(公告)号: | CN116170487A | 公开(公告)日: | 2023-05-26 |
发明(设计)人: | 刘少伟;李昕冉;张昊 | 申请(专利权)人: | 中国移动通信有限公司研究院;中国移动通信集团有限公司 |
主分类号: | H04L67/1396 | 分类号: | H04L67/1396;H04L65/102 |
代理公司: | 北京银龙知识产权代理有限公司 11243 | 代理人: | 冯宇潮 |
地址: | 100053 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 微服 务链路 追踪 处理 方法 协调 设备 服务 网关 | ||
本发明提供一种微服务链路追踪的处理方法、协调设备及服务网关,该方法包括:协调设备接收服务网关发送的第一请求消息,所述第一请求消息用于请求所述协调设备分配跟踪ID;协调设备根据所述第一请求消息,从可分配的跟踪ID中为所述服务网关分配跟踪ID,以使微服务系统中各个服务请求的跟踪ID具有唯一性;本发明实施例通过引入协调设备,负责协调多个微服务组的入口服务网关间的跟踪ID分配,保证微服务系统中跟踪ID的唯一性。
技术领域
本发明涉及通信技术领域,尤其是指一种微服务链路追踪的处理方法、协调设备及服务网关。
背景技术
在微服务场景下,一个传统的应用将会由多个微服务组成,微服务之间相互调用。当应用出现问题的时候,很难从错综复杂的微服务调用网络中找到问题的根源。
链路追踪就是为了解决这个问题,通过记录服务间调用的层次关系、调用顺序和时间戳等信息,把多个服务串起来。具体来说包含有以下几点:
1.TraceID:标识本次请求调用的所有服务,在微服务调用开始时由消费端产生并插入到请求消息中。
2.SpanID:标识被调用服务的先后顺序。
3.ParentID:标识调用的层级关系。
4.Timestamp:标识发起/接收调用时的时间戳和返回/接收调用时的时间戳。常用的有以下几种时间戳:
a)Client Sent(简称cs),指客户端发起调用请求到服务端。
b)Server Received(简称sr),指服务端接收到了客户端的调用请求。
c)Server Sent(简称ss),指服务端完成了处理,准备将信息返给客户端。
d)Client Received(简称cr),指客户端接收到了服务端的返回信息。
上述链路追踪方案在微服务组(或微服务集群,指在同一个网关(或入口)后的微服务的组合)的网关处分配并向请求消息中插入TraceID,用以标识服务链路的唯一性。但是现有链路追踪方案,在有多个微服务组的情况下,会出现TraceID不唯一的问题。例如,可能的场景如下:
1、微服务组之间存在微服务调用,每个微服务组的网关会检查请求消息中是否含有TraceID。如果没有则分配一个TraceID并插入请求消息中,如果有则不再分配新的TraceID。每个入口独立分配TraceID,可能会造成整个系统中TraceID的不唯一现象。
2、微服务组之间不存在微服务调用,则每个微服务组入口独立分配TraceID,可能会造成整个系统中TraceID的不唯一现象。
发明内容
本发明实施例的目的在于提供一种微服务链路追踪的处理方法、协调设备及服务网关,以解决现有技术中包括多个微服务组的微服务系统中出现TraceID不唯一的问题。
为了解决上述问题,本发明实施例提供一种微服务链路追踪的处理方法,由协调设备执行,包括:
接收服务网关发送的第一请求消息,所述第一请求消息用于请求所述协调设备分配跟踪ID;
根据所述第一请求消息,从可分配的跟踪ID中为所述服务网关分配跟踪ID,以使微服务系统中各个服务请求的跟踪ID具有唯一性。
其中,所述接收服务网关发送的第一请求消息,包括:
接收所述服务网关上线或预分配的跟踪ID分配完的情况下发送的所述第一请求消息。
其中,根据所述第一请求消息,从可分配的跟踪ID中为所述服务网关分配跟踪ID,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信有限公司研究院;中国移动通信集团有限公司,未经中国移动通信有限公司研究院;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111412030.X/2.html,转载请声明来源钻瓜专利网。