预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共15页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN114172823A(43)申请公布日2022.03.11(21)申请号202111400526.5(22)申请日2021.11.19(71)申请人郑州云海信息技术有限公司地址450018河南省郑州市郑东新区心怡路278号16层1601室(72)发明人吕宪国吴栋(74)专利代理机构北京集佳知识产权代理有限公司11227代理人吴磊(51)Int.Cl.H04L43/08(2022.01)H04L41/0677(2022.01)权利要求书2页说明书9页附图3页(54)发明名称一种微服务链路采样方法、装置、设备及可读存储介质(57)摘要本申请公开了一种微服务链路采样方法、装置、设备及可读存储介质,方法包括:预先根据目标应用的类型及目标应用中各微服务的功能,分别为各微服务设置对应的采样率;在目标应用中的当前微服务接收到请求时进行流量劫持,并根据当前微服务对应的采样率、当前微服务对应的历史采样请求数及历史请求总数判断是否对请求进行采样;若是,则从劫持的流量中对请求进行链路数据采集。本申请公开的上述技术方案,通过分别为各微服务设置对应的采样率而实现细粒度及灵活地对目标应用中的各微服务进行链路数据采集,从而有效解决因过度采样而导致业务请求时延加大和资源占用过高与采样不足而导致无法准确定位性能瓶颈间的矛盾。CN114172823ACN114172823A权利要求书1/2页1.一种微服务链路采样方法,其特征在于,包括:预先根据目标应用的类型及所述目标应用中各微服务的功能,分别为各所述微服务设置对应的采样率;在所述目标应用中的当前微服务接收到请求时进行流量劫持,并根据所述当前微服务对应的采样率、所述当前微服务对应的历史采样请求数及历史请求总数判断是否对所述请求进行采样;若是,则从劫持的流量中对所述请求进行链路数据采集。2.根据权利要求1所述的微服务链路采样方法,其特征在于,在预先根据目标应用的类型及所述目标应用中各微服务的功能,分别为各所述微服务设置对应的采样率之前,还包括:根据各所述微服务所在机器的CPU类型,通过sidecar模式分别为各所述微服务注入对应的代理;在所述目标应用中的当前微服务接收到请求时进行流量劫持,并根据所述当前微服务对应的采样率、所述当前微服务对应的历史采样请求数及历史请求总数判断是否对所述请求进行采样,包括:在所述目标应用中的当前微服务接收到请求时,利用所述当前微服务中的代理进行流量劫持,并利用所述代理根据所述当前微服务对应的采样率、所述当前微服务对应的历史采样请求数及历史请求总数,判断是否对所述请求进行采样;从劫持的流量中对所述请求进行链路数据采集,包括:利用所述代理从劫持的流量中对所述请求进行链路数据采集。3.根据权利要求2所述的微服务链路采样方法,其特征在于,利用所述代理根据所述当前微服务对应的采样率、所述当前微服务对应的历史采样请求数及历史请求总数,判断是否对所述请求进行采样,包括:利用所述代理中的采样率控制器将所述请求中的请求采样率设置为所述当前微服务对应的采样率,并将所述请求传递给计数器;利用所述计数器计算所述当前微服务对应的历史采样请求数与历史请求总数的比率,并判断所述比率是否大于所述请求中的请求采样率,若否,则确定对所述请求进行采样。4.根据权利要求2所述的微服务链路采样方法,其特征在于,分别为各所述微服务注入对应的代理,包括:分别将各所述微服务对应的代理以独立容器的形式注入到所述微服务器所在的pod中。5.根据权利要求1所述的微服务链路采样方法,其特征在于,在从劫持的流量中对所述请求进行链路数据采集之后,还包括:将采集到的链路数据保存在数据库中。6.根据权利要求5所述的微服务链路采样方法,其特征在于,还包括:以所述目标应用为边界,从所述数据库中获取与所述目标应用对应的链路数据,并根据所述链路数据获取所述目标应用对应的链路信息。7.根据权利要求6所述的微服务链路采样方法,其特征在于,在根据所述链路数据获取所述目标应用对应的链路信息之后,还包括:2CN114172823A权利要求书2/2页对所述目标应用对应的链路信息进行展示。8.一种微服务链路采样装置,其特征在于,包括:设置模块,用于预先根据目标应用的类型及所述目标应用中各微服务的功能,分别为各所述微服务设置对应的采样率;判断模块,用于在所述目标应用中的当前微服务接收到请求时进行流量劫持,并根据所述当前微服务对应的采样率、所述当前微服务对应的历史采样请求数及历史请求总数判断是否对所述请求进行采样;采集模块,用于若根据所述当前微服务对应的采样率、所述当前微服务对应的历史采样请求数及历史请求总数确定对所述请求进行采样,则从劫持的流量中对所述请求进行链路数据采集。9.一种微服务链路采样