全链路信息的处理方法、系统、电子设备及存储介质技术方案

技术编号:34844827 阅读:19 留言:0更新日期:2022-09-08 07:43
本发明专利技术公开了一种全链路信息的处理方法、系统、电子设备及存储介质,其中,所述处理方法包括:构建相互独立隔离部署的若干设定集群,不同的所述设定集群对应不同的服务;获取网关请求对应的请求关联信息;确定所述请求关联信息对应的网关路由策略,不同的所述网关路由策略对应将所述网关请求跳转至不同的所述设定集群;根据所述网关路由策略对所述网关请求对应的全链路信息进行处理。本发明专利技术有效解决了全链路场景下信息过多对线上服务响应时间长、吞吐量低等性能问题,保障了线上服务的高可用性,解决了跨进程传递标识对业务的侵入问题,降低了用户接入和使用系统的成本。降低了用户接入和使用系统的成本。降低了用户接入和使用系统的成本。

【技术实现步骤摘要】
全链路信息的处理方法、系统、电子设备及存储介质


[0001]本申请涉及计算机
,尤其涉及一种全链路信息的处理方法、系统、电子设备及存储介质。

技术介绍

[0002]单体服务是将所有应用的服务功能集中在一个系统中实现,这样会造成架构中的项目过于臃肿,无法实现资源隔离和资源拓展,由此出现了微服务技术,微服务技术将单个应用程序作为一套小型服务开发的方法,在微服务系统中,将一个应用请求拆分成不同的应用功能,然后将这些具有不同应用功能的微服务分散至不同的服务器上,微服务架构具有独立部署、扩展灵活、资源有效隔离等优点。
[0003]但当单体服务被拆分成微服务后,由于各个微服务分散在不同的服务器上,各个微服务在被响应的过程中会产生大量的日志文件,整个而这些日志文件也分散在不同的服务器上,整个全链路级联系统的日志串联与追踪的困难成为技术人员排障追踪业务问题的痛点。目前虽已有一些技术可以做到将多个微服务的日志通过统一的标识进行收集和聚合,但在单个JVM(一种Java虚拟机)内使用线程池技术时的跨线程自动传递和多个微服务之间的跨进程传递标识的业务无入侵性上还存在着缺点。同时,过多的日志文件会造成线上服务响应时间长、吞吐量低等性能问题,并且在跨线程传递时会有对业务的侵入问题,影响整个链路的调用关系,使用户接入和使用系统的成本提高。

技术实现思路

[0004]本专利技术要解决的技术问题是为了克服现有技术中微服务技术全链路场景下过多信息对于不同服务造成干扰,对不同业务造成侵入的缺陷,提供一种全链路信息的处理方法、系统、电子设备及存储介质。
[0005]本专利技术是通过下述技术方案来解决上述技术问题:
[0006]作为本专利技术的第一方面,提供一种全链路信息的处理方法,所述处理方法应用在采用微服务的分布式系统中,所述处理方法包括:
[0007]构建相互独立隔离部署的若干设定集群,不同的所述设定集群对应不同的服务;
[0008]获取网关请求对应的请求关联信息;
[0009]确定所述请求关联信息对应的网关路由策略,不同的所述网关路由策略对应将所述网关请求跳转至不同的所述设定集群;
[0010]根据所述网关路由策略对所述网关请求对应的全链路信息进行处理。
[0011]较佳地,所述若干设定集群包括:生产集群和日志集群;
[0012]所述日志集群用于提供生产日志的服务,所述生产集群用于提供除生产日志的服务之外的线上服务。
[0013]较佳地,所述获取网关请求对应的请求关联信息的步骤包括:
[0014]获取所述网关请求;
[0015]判断所述网关请求是否属于全链路请求;
[0016]若属于,则获取所述网关请求的请求关联信息,所述请求关联信息包括:全链路标识信息和元数据。
[0017]较佳地,所述确定所述请求关联信息对应的网关路由策略的步骤包括:
[0018]获取不同的所述设定集群对应的集群标识信息;
[0019]控制网关比较所述请求关联信息和所述集群标识信息,匹配得到与所述请求关联信息对应的目标服务集群。
[0020]较佳地,所述根据所述网关路由策略对所述网关请求对应的全链路信息进行处理的步骤包括:
[0021]将所述网关请求根据所述网关路由策略跳转至目标服务集群;
[0022]根据设定负载均衡算法和所述请求关联信息,确定选择所述目标服务集群中的目标服务器,并采用所述目标服务器对所述网关请求对应的全链路信息进行处理。
[0023]较佳地,全链路中的客户端在与服务端均设有拦截器插件;
[0024]所述获取网关请求对应的请求关联信息的步骤包括:
[0025]所述客户端的拦截器插件用于识别所述网关请求,并将所述请求关联信息封装成同一设定格式并传递至所述服务端;
[0026]所述服务端的拦截器插件用于接收所述客户端发送的封装后的所述请求关联信息并进行解析,以得到解析后的所述请求关联信息。
[0027]较佳地,所述拦截器插件支持用户配置进行开关控制;和/或,
[0028]所述请求关联信息支持基于Java Agent(一种实现字节码修改功能的基础技术框架)字节码动态修改技术进行字节码替换。
[0029]作为本专利技术的第二方面,提供一种全链路信息的处理系统,所述处理系统属于微服务的分布式系统,所述处理系统包括:
[0030]构建模块,用于构建相互独立隔离部署的若干设定集群,不同的所述设定集群对应不同的服务;
[0031]获取模块,用于获取网关请求对应的请求关联信息;
[0032]路由策略模块,用于确定所述请求关联信息对应的网关路由策略,不同的所述网关路由策略对应将所述网关请求跳转至不同的所述设定集群;
[0033]处理模块,用于根据所述网关路由策略对所述网关请求对应的全链路信息进行处理。
[0034]作为本专利技术的第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的全链路信息的处理方法。
[0035]作为本专利技术的第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的全链路信息的处理方法。
[0036]本专利技术的积极进步效果在于:
[0037]本专利技术提供的全链路信息的处理方法、系统、电子设备及存储介质,建立了基于隔离集群、网关路由策略和负载均衡机制下的全链路信息传递方法,从而解决了全链路场景下信息过多对线上服务响应时间长、吞吐量低等性能问题,保障了线上服务的高可用性,设
置生产集群和日志集群的相互隔离,互不干扰,解决了跨进程传递标识对业务的侵入问题,用户无需手动实现跨线程传递上下文信息,方便用户接入与使用,降低了用户接入和使用系统的成本。
附图说明
[0038]图1为本专利技术实施例1的全链路信息的处理方法的第一流程示意图;
[0039]图2为本专利技术实施例1的全链路信息的处理方法的第二流程示意图;
[0040]图3为本专利技术实施例1的全链路信息的处理方法的拦截器示意图;
[0041]图4为本专利技术实施例2的全链路信息的处理系统的模块示意图;
[0042]图5为本专利技术实施例3的电子设备的结构示意图。
具体实施方式
[0043]下面通过实施例的方式进一步说明本专利技术,但并不因此将本专利技术限制在所述的实施例范围之中。
[0044]实施例1
[0045]如图1所示,本实施例的全链路信息的处理方法包括以下步骤:
[0046]步骤101、构建相互独立隔离部署的若干设定集群。
[0047]不同的设定集群对应不同的服务,其中,若干设定集群包括:生产集群和日志集群,日志集群用于提供生产日志的服务,生产集群用于提供除生产日志的服务之外的线上服务,保证日志的生产不对生产集群的服务造成干扰。
[0048]使用独立的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种全链路信息的处理方法,其特征在于,所述处理方法应用在采用微服务的分布式系统中,所述处理方法包括:构建相互独立隔离部署的若干设定集群,不同的所述设定集群对应不同的服务;获取网关请求对应的请求关联信息;确定所述请求关联信息对应的网关路由策略,不同的所述网关路由策略对应将所述网关请求跳转至不同的所述设定集群;根据所述网关路由策略对所述网关请求对应的全链路信息进行处理。2.如权利要求1所述的全链路信息的处理方法,其特征在于,所述若干设定集群包括:生产集群和日志集群;所述日志集群用于提供生产日志的服务,所述生产集群用于提供除生产日志的服务之外的线上服务。3.如权利要求1或2所述的全链路信息的处理方法,其特征在于,所述获取网关请求对应的请求关联信息的步骤包括:获取所述网关请求;判断所述网关请求是否属于全链路请求;若属于,则获取所述网关请求的请求关联信息,所述请求关联信息包括:全链路标识信息和元数据。4.如权利要求3所述的全链路信息的处理方法,其特征在于,所述确定所述请求关联信息对应的网关路由策略的步骤包括:获取不同的所述设定集群对应的集群标识信息;控制网关比较所述请求关联信息和所述集群标识信息,匹配得到与所述请求关联信息对应的目标服务集群。5.如权利要求4所述的全链路信息的处理方法,其特征在于,所述根据所述网关路由策略对所述网关请求对应的全链路信息进行处理的步骤包括:将所述网关请求根据所述网关路由策略跳转至目标服务集群;根据设定负载均衡算法和所述请求关联信息,确定选择所述目标服务集群中的目标服务器,并采用所述目标服务器对所述网关请...

【专利技术属性】
技术研发人员:梁凌轩付青云罗茂林董艺荃王超
申请(专利权)人:携程旅游网络技术上海有限公司
类型:发明
国别省市:

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

1