一种面向DUBBO调用全链路的深度监管系统及方法技术方案

技术编号:37602928 阅读:8 留言:0更新日期:2023-05-18 11:54
本发明专利技术提供了一种面向DUBBO调用全链路的深度监管系统及方法,涉及服务框架深度监控技术领域,包括客户端和服务端;客户端用于:集成在应用上,将应用名称和监听端口向服务端进行注册;实时监听监听端口,获取服务端传入的需监控组件名称;根据需监控组件名称对应用中的该组件进行性能数据采集;将采集到的性能数据发送服务端;服务端用于:记录客户端注册的各应用名称和监听端口信息;设置各应用的监控策略;根据监控策略向各应用的监听接口发送需监控组件名称;接收客户端发送的各需监控组件的性能数据;对各组件的性能数据进行分析,发现应用异常问题。本发明专利技术能够发现应用问题的根源所在,对组件参数快速调优,解决应用流量异常问题。问题。问题。

【技术实现步骤摘要】
一种面向DUBBO调用全链路的深度监管系统及方法


[0001]本专利技术属于服务框架深度监控
,尤其是涉及一种面向DUBBO调用全链路的深度监管系统及方法。

技术介绍

[0002]DUBBO是一个开源的高性能RPC分布式服务框架,能使得应用通过高性能的RPC(远程过程调用协议)实现服务的输出和输入功能
[0003]目前多数微服务应用都基于DUBBO实现RPC,对于这一技术实现的性能监控方面,业界多数停留在调用耗时等问题上,对于耗时为什么长的根因溯源方面支撑度较弱;原因在于,当前市场上的监控工具停留在请求AOP(面向切面编程,即:通过预编译方式和运行期间动态代理实现程序功能)级别,没有深入源码级的监控以及监控数据之间的串接和分析比较缺乏。
[0004]另外,由于DUBBO整个调用链路涉及ZK中间件、NETTY框架所以当某个环节出现问题时,生产环境很难溯源。
[0005]鉴于此,只能更进一步的对DUBBO各框架进行深度监控,才能快速准确发现问题根源。

技术实现思路

[0006]针对上述问题,本专利技术提出了一种面向DUBBO调用全链路的深度监管系统及方法,通过对各组件性能数据的采集,发现应用问题的根源所在,进而对组件参数快速调优,解决应用流量异常问题。
[0007]为实现上述目的,本专利技术公开了一种面向DUBBO调用全链路的深度监管方法,包括:
[0008]包括:客户端和服务端;
[0009]所述客户端,用于:
[0010]集成在应用上,将应用名称和监听端口向服务端进行注册;
[0011]实时监听所述监听端口,获取服务端传入的需监控组件名称;
[0012]根据所述需监控组件名称对应用中的该组件进行性能数据采集;
[0013]将采集到的性能数据发送服务端;
[0014]所述服务端,用于:
[0015]记录客户端注册的各应用名称和监听端口信息;
[0016]设置各应用的监控策略;
[0017]根据监控策略向各客户端的所述监听接口发送需监控组件名称;
[0018]接收所述客户端发送的各需监控组件的性能数据;
[0019]对各组件的性能数据进行分析,发现应用异常问题。
[0020]作为本专利技术的进一步改进,述客户端配置有服务端地址;
[0021]所述客户端根据所述服务端地址将客户端所在应用的应用名称和监控端口向所述服务端进行注册;
[0022]所述客户端根据所述服务端地址将采集到的性能数据发送所述服务端。
[0023]作为本专利技术的进一步改进,获取服务端传入的需监控组件名称,根据所述需监控组件名称对应用中的该组件进行性能数据采集;包括:
[0024]客户端将所述需监控组件名称放入任务队列,当执行到该任务时,调用该组件对应的采集器,完成性能数据的采集。
[0025]作为本专利技术的进一步改进,所述任务队列中的任务,采用多线程并行执行。
[0026]作为本专利技术的进一步改进,所述监控策略,包括:应用名称、需监控组件名称和采集周期。
[0027]作为本专利技术的进一步改进,所述根据监控策略向各应用的所述监听接口发送需监控组件名称;包括:
[0028]所述服务端定期扫描所述监控策略,若时间满足所述监控策略中任一需监控组件的所述采集周期,则开始监控调度。
[0029]作为本专利技术的进一步改进,对存在应用异常问题的组件进行阈值判断,若超出阈值,则发起告警。
[0030]作为本专利技术的进一步改进,还包括指标平台,用于:
[0031]展示所述服务端接收到的各徐监控组件的性能数据及分析结果;
[0032]接收服务端发起的告警信号。
[0033]作为本专利技术的进一步改进,需监控组件包括:DUBBO客户端、DUBBO服务端、ZK客户端、NETTY客户端、NETTY服务端。
[0034]如图2所示,本专利技术还提供了一种面向DUBBO调用全链路的深度监管方法,包括:
[0035]各客户端分别向服务端注册其所在应用的应用名称和监听端口;
[0036]服务端记录各客户端注册的所述应用名称和监听端口信息;
[0037]所述服务端设置并实时扫描监控策略,根据监控策略向各客户端的所述监听接口发送需监控组件名称;
[0038]所述客户端实时监听所述监听端口,获取服务端传入的所述需监控组件名称,根据所述需监控组件名称对应用中的该组件进行性能数据采集,并将采集到的性能数据发送服务端;
[0039]所述服务端对各组件的性能数据进行分析,发现应用异常问题。
[0040]与现有技术相比,本专利技术的有益效果为:
[0041]本专利技术通过搭建客户端和服务端,并将客户端集成到应用上,对服务端进行配置并控制客户端对应用中的组件性能数据进行采集,通过各组件的性能数据,发现应用问题的根源所在,进而对组件参数快速调优,解决应用流量异常问题。
附图说明
[0042]图1为本专利技术一种实施例公开的面向DUBBO调用全链路的深度监管系统示意图;
[0043]图2为本专利技术一种实施例公开的面向DUBBO调用全链路的深度监管方法流程图;
[0044]图3为本专利技术一种实施例公开的面向DUBBO调用全链路的深度监管系统整体架构
示意图。
具体实施方式
[0045]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0046]下面结合附图对本专利技术做进一步的详细描述:
[0047]如图1所示,本专利技术公开的一种面向DUBBO调用全链路的深度监管系统,包括:客户端、服务端和指标平台;
[0048]客户端,用于:
[0049](1)集成在应用上,将应用名称和监听端口向服务端进行注册;
[0050]其中,
[0051]客户端配置有服务端地址;
[0052]客户端根据服务端地址将客户端所在应用的应用名称和监控端口向服务端进行注册;
[0053](2)实时监听监听端口,获取服务端传入的需监控组件名称;
[0054]其中,
[0055]需监控组件包括:DUBBO客户端、DUBBO服务端、ZK客户端、NETTY客户端、NETTY服务端。
[0056](3)根据需监控组件名称对应用中的该组件进行性能数据采集,将采集到的性能数据发送服务端;
[0057]其中,
[0058]客户端将需监控组件名称放入任务队列,当执行到该任务时,调用该组件对应的采集器,完成性能数据的采集;
[0059]客户端根据服务端地址将采集到的性能数据发送服务端。
[0060]进一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种面向DUBBO调用全链路的深度监管系统,其特征在于,包括:客户端和服务端;所述客户端,用于:集成在应用上,将应用名称和监听端口向服务端进行注册;实时监听所述监听端口,获取服务端传入的需监控组件名称;根据所述需监控组件名称对应用中的该组件进行性能数据采集;将采集到的性能数据发送服务端;所述服务端,用于:记录客户端注册的各应用名称和监听端口信息;设置各应用的监控策略;根据监控策略向各客户端的所述监听接口发送需监控组件名称;接收所述客户端发送的各需监控组件的性能数据;对各组件的性能数据进行分析,发现应用异常问题。2.根据权利要求1所述的面向DUBBO调用全链路的深度监管系统,其特征在于:所述客户端配置有服务端地址;所述客户端根据所述服务端地址将客户端所在应用的应用名称和监控端口向所述服务端进行注册;所述客户端根据所述服务端地址将采集到的性能数据发送所述服务端。3.根据权利要求1所述的面向DUBBO调用全链路的深度监管系统,其特征在于:获取服务端传入的需监控组件名称,根据所述需监控组件名称对应用中的该组件进行性能数据采集;包括:客户端将所述需监控组件名称放入任务队列,当执行到该任务时,调用该组件对应的采集器,完成性能数据的采集。4.根据权利要求3所述的面向DUBBO调用全链路的深度监管系统,其特征在于:所述任务队列中的任务,采用多线程并行执行。5.根据权利要求1所述的面向DUBBO调用全链路的深度监管系统,其特征在于:所述监控策略,包括:应用名称、需监控组件名称和采集周期。6.根据权...

【专利技术属性】
技术研发人员:王陶林
申请(专利权)人:北京思特奇信息技术股份有限公司
类型:发明
国别省市:

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

1