[发明专利]一种面向微服务调用过程跟踪的监控系统及方法有效
申请号: | 201710937117.6 | 申请日: | 2017-10-10 |
公开(公告)号: | CN107766205B | 公开(公告)日: | 2019-11-22 |
发明(设计)人: | 应时;文春雷;王蕊;张婷;张火林;曾凯;贾向阳 | 申请(专利权)人: | 武汉大学 |
主分类号: | G06F11/30 | 分类号: | G06F11/30;G06F9/46;G06F9/54;G06F16/22;G06F16/25 |
代理公司: | 42222 武汉科皓知识产权代理事务所(特殊普通合伙) | 代理人: | 魏波<国际申请>=<国际公布>=<进入国 |
地址: | 430072 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 面向 微服 调用 过程 跟踪 监控 系统 方法 | ||
1.一种面向微服务调用过程跟踪的监控方法,采用面向微服务调用过程跟踪的监控系统,其特征在于:所述系统包括数据采集模块、数据传输模块、数据存储模块;
所述数据采集模块,用于使用基于字节码的动态AOP技术采集微服务节点上的服务性能数据和描述服务调用关系的数据;
所述数据传输模块,用于监控数据的异步传输;
所述数据存储模块,用于对采集到的服务性能数据以及描述服务调用关系的数据进行统一管理存储,并提供以用户事务请求为单位的查询接口;
所述方法包括以下步骤:
步骤1:数据采集模块从各个微服务节点中采集服务运行时的性能数据,同时添加描述服务调用的标识数据,并将数据封装为消息发送至数据传输模块;
步骤1的具体实现包括以下子步骤:
步骤1.1:数据采集模块对应用服务器组件、通信组件和数据库访问组件的相关类方法添加监控逻辑代码,增强组件功能;
步骤1.2:增强后的组件在服务运行期间采集和记录性能数据和标识数据;
步骤1.3:数据采集模块将采集的数据封装为消息发送给数据传输模块;
步骤2:数据传输模块接收各服务节点发送而来的消息数据,采用消息中间件作缓冲,实现数据接入和传输;
步骤2的具体实现包括以下子步骤:
步骤2.1:数据采集模块创建消息队列和异步线程,将数据推送到消息队列;
步骤2.2:异步线程将消息发送至消息中间件;
步骤3:数据存储模块从消息中间件中获取消息数据,并将数据存储到数据库中;
步骤3的具体实现包括以下子步骤:
步骤3.1:数据存储模块从消息中间件中接收数据;
步骤3.2:数据存储模块对数据进行解析和过滤;
步骤3.3:数据存储模块将合法的数据存入数据库;
步骤4:数据展示模块从数据库中读取监控数据,依据描述服务调用关系的标识数据构建用户请求的服务调用树;
步骤4的具体实现包括以下子步骤:
步骤4.1:数据展示模块依据查询接口从数据库中读取用户事务请求数据;
步骤4.2:数据展示模块处理数据,计算服务响应时间,并构建服务调用拓扑关系;
步骤4.3:数据展示模块可视化呈现用户事务请求的执行过程以及各环节的性能信息。
2.根据权利要求1所述的方法,其特征在于:所述数据采集模块若干,作为监控代理部署于各微服务节点处,在应用系统响应用户请求时,采集各服务的服务地址信息、时间戳信息以及服务运行过程中的数据库访问信息、异常信息。
3.根据权利要求1所述的方法,其特征在于:所述数据传输模块采用基于消息队列的异步传输方式,对系统从各分散的服务节点采集而来的数据进行接入和传输。
4.根据权利要求1所述的方法,其特征在于:所述数据存储模块用于存储采集的数据,接收数据传输模块传输的监控数据,采用列式模型的数据库进行存储,并提供以用户事务请求为单位的事务信息查询接口。
5.根据权利要求1-4任意一项所述的方法,其特征在于:所述监控系统还包括数据展示模块,用于从数据库中读取监控数据,提供查询接口;并对数据进行处理分析,以图表的形式在Web页面中呈现监控结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710937117.6/1.html,转载请声明来源钻瓜专利网。