应用性能分析神器“透视宝”亮剑之监控宝API监控优化

作者:云智慧 Kevin Kong & Allen Zhang

企业IT部门在进行互联网/移动应用功能优化过程中最大的痛点在于,明明知道应用存在问题,却难于准确定位具体问题点并快速制定有效的解决方案,此时企业最需要有一套全栈应用性能监控、管理工具。透视宝是云智慧推出的新一代面向业务的端到端应用性能管理(APM)平台,针对移动和Web应用,提供全面的性能监控、分析与管理解决方案,本文将重点描述透视宝在优化云智慧旗下网络监控产品——监控宝API监控过程中起到的关键作用。
一、监控宝API监控遇到的问题
监控宝API监控用于对企业内部自有API及第三方数据接口的正确性、可用性与耗时分析进行即时监控、告警,为接口服务提供有效的质量保障。由于越来越多的云智慧客户因为业务的需要,大量使用API实现事务, API监控的需求呈指数级增长,造成了监控宝相关模块线上告警处理任务队列的堆积问题,具体表现为:告警处理信息消费队列严重堆积,高峰时达到几十万条告警任务等待被消费,造成了告警延迟。
API监控研发人员首先判断是程序代码的Bug,于是将可能造成信息消费队列瓶颈的相关代码梳理了一遍,初步判断可能是以下几点原因造成的:
1.告警消费线程只有20个,存在消费能力不足的问题;
2.在消费线程中有数据库访问操作,影响了消耗性能;
3.程序日志文件中出现大量无法获得数据库连接、数据类型转换错误等日志信息,影响告警逻辑的处理效率;
二、为什么选择“透视宝”
由于缺少足够证据证明上述判断,所以透视宝团队虽然在代码层面进行了针对性的优化,并且模拟了大数据并发的处理场景,但仍然没有真正解决线上产品的问题。
为了快速排查问题,平台开发组提出在线下建立与线上“一比一”的应用环境(包括:操作系统,数据库的配置、结构、数据、应用程序),用透视宝实现该环境的监控和分析,从操作系统资源使用、数据请求访问情况、数据库运行状况、应用系统错误记录等多个方面入手。同时在线上环境也安装一套透视宝,以便于对于同类监控数据的对比、分析、排查问题。
三、“透视宝”解决问题的过程分析
(一)首先,看一下线上透视宝监控分析内容:
1、运行环境总体情况

从这个页面可以看到,API监控整体运行情况非常慢,错误非常多,数据库请求时间比较长。

2、数据请求访问情况

从这个页面可以看到不同监测点请求调度器的请求数量和平均响应时间,根据请求、响应时间、请求数量进行排序,可以看到最大平均响应时间和最小平均响应时间。API监控研发人员在看到这个数据的时候被震惊了,平均响应时间有几秒钟,肯定是在数据请求的时候出现了问题。于是仔细查看这部分代码,发现有大量的数据库读、更新、写的操作,并且非常频繁,怀疑是数据库范文遇到了瓶颈。

3、数据库服务运行情况

接下来透视宝提供的数据库监控分析服务,明确地告诉我们的确是这个方面的问题。从这个页面可以很直观的看到不同数据库表上的不同操作的响应时间,在2000ms以上的响应时间占据了大部分,说明数据库读写有严重问题。查看上面提示的库表结构,发现很多库表一个索引都没有,而且查询非常频繁,不仅后端Java要查,前端PHP也要查。

4、线上错误总体分析

上面的图表展现的是应用程序错误信息的总体情况,下面是错误信息发生的外部事务,返回的状态码,错误的发生次数,以及第一次和最后一次的发生时间,能够清楚地看到不同类型错误的发生频率。

(二)问题解决之后的对比:
1、数据访问情况

这个图可以看到,从8月10日下午2点开始,监测点请求调度器的平均最大时间由5秒钟变成了39毫秒,由于响应时间的降低,请求数也从不到20万提升到25万以上。监控宝研发人员在看到这个数据的时候,第一反应是认为程序出现问题了,后来证实完全没有问题,透视宝给了我们一个非常直观、便捷的反馈信息。

2、数据库服务运行状况对比:

数据库性能,同样经历了从波涛汹涌到风平浪静的过程。这要归功于透视宝提供的数据库表以及操作问题,研发人员进行了针对性的解决,才有了如此高的数据库访问性能的提升。

3、应用程序错误总体情况对比:

根据透视宝的分析结果,对出错频繁的操作进行针对性优化,错误数和异常数大大降低。

四、总结:“透视宝”的功能强大、简洁易用
在解决API监控问题的过程中,开发环境、QA环境、“一比一”的Beta环境均无法重现堆积问题,而生产环境对于开发团队来说是黑盒,没有访问权限。因为历史原因,应用有大量的日志,但日志加的很乱,几乎获取不到多少有效信息,即使后面在代码中加日志,也不知道从何加起,工作量也很大。
透视宝很轻松的解决了上述问题,准确获得生产环境中实际被调度的任务量和返回的需要处理的量,虽然QA模拟的任务数比生产还多,但需要处理的数据却比生产少很多,同时还知道了处理一次数据平均需要5秒。通过透视宝的数据库功能发现请求中有很多SQL访问特别慢,针对问题添加索引、优化SQL语句、提高线程数、优化代码,使响应时间提高了近百倍,成功解决了堆积和丢任务的问题。
监控宝API监控的开发团队成功利用“透视宝”快速定了API监控优化过程中遇到的问题(包括应用程序和应用环境),并提供了准确、有效的分析数据,在本次API监控优化过程中扮演了关键角色。而解决此次问题主要使用了“透视宝”APM和主机性能监控模块的部分功能,透视宝还提供从移动端、Web端深入到代码层的全面性能监控,帮助您实时发现与定位应用在线上环境运行的各种故障与性能瓶颈。

时间: 2024-10-11 19:41:47

应用性能分析神器“透视宝”亮剑之监控宝API监控优化的相关文章

我与监控宝之间的点点滴滴

从事两年软件开发工作的我,在14年有幸接触到监控宝,当时听说有这个东西,也没过多的进行了解.去年公司在各种大中小型的项目中配备的有10多台服务器,全部放在办公楼4楼的一个机房里,进行统一的管理,而研发中心管理这块的就只有一名技术人员,,从而使得工作任务多,很多要解决的问题要一一进行排查,降低了工作效率.有的时候项目或多或少的都会出现问题,而问题发现.定位的时间都比较长,人工排查,要找半天,对于项目的监控只能是有客户反映问题,然后技术人员慢慢发现,慢慢解决.使用监控宝是在今年,三四月前,公司打算做

我与云智慧监控宝之间的点点滴滴

作者:菀镁主题曲 从事两年软件开发工作的我,在14年有幸接触到监控宝,当时听说有这个东西,也没过多的进行了解.去年公司在各种大中小型的项目中配备的有10多台服务器,全部放在办公楼4楼的一个机房里,进行统一的管理,而研发中心管理这块的就只有一名技术人员,,从而使得工作任务多,很多要解决的问题要一一进行排查,降低了工作效率.有的时候项目或多或少的都会出现问题,而问题发现.定位的时间都比较长,人工排查,要找半天,对于项目的监控只能是有客户反映问题,然后技术人员慢慢发现,慢慢解决.使用监控宝是在今年,三

监控宝———开启智能监控新时代

从事两年软件开发工作的我,在14年接触到监控宝,那时公司在项目中配备的有10多台服务器,全部放在一个机房里,进行统一管理,有的时候项目或多或少的都会出现问题,人工排查,要找半天,对于项目的监控只能是有客户反映问题,我们才能及时解决.使用监控宝是在今年,前不久,公司打算做一个电子商务的网站,功能要求是像淘宝.天猫.京东那样的电商项目,而我就是这个电商项目的开发人员,这个项目边做边上线,放在公司服务器上随时进行有效的监控. 一.概述 监控宝提供了一套端到端的一体化云监控,保障IT系统稳定可靠,涉及监

配置监控宝 监控服务器性能

先在服务器上配置snmp服务: 1.安装snmp软件 yum install net-snmp net-snmp-devel net-snmp-utils ************************************************************************************** *************************************************************************************

监控宝指数:云智慧发布6月行业网站性能指数报告

监控宝指数:云智慧发布6月行业网站性能指数报告,布布扣,bubuko.com

监控宝优化升级 创新驱动用户体验

监控宝优化升级 创新驱动用户体验 近日,云智慧(北京)科技有限公司宣布,监控宝第一季度的产品和基础监测点升级部署计划已经提前完成.本次服务升级主要包含:监测点网络部署.产品体验优化和部分套餐优惠调整等几个方面.其中标准.高级.专业套餐均为用户免费增加了2个监控点,并且标准套餐降价优惠了48%,提高产品服务品质的同时,帮助用户降低运维成本. 随着江西电信监测点的正式投入运营,监控宝独立部署的监测点已经达到35个,覆盖全国主要地区以及中国电信.中国联通.中国移动和教育网等网络服务商.除了监测点外,监

监控宝发布移动应用监控服务 引领移动APM

监控宝发布移动应用监控服务 引领移动APM [2014年4月22日,北京]--国内领先的应用性能管理运营商,云智慧(北京)科技有限公司近日宣布,推出"移动应用监控服务".这项全新的企业级监控服务解决方案,基于应用服务接口监控业务过程,捕捉应用或服务的终端用户体验,跟踪整个应用交互的数据流,发现业务端口可用率和正确性以及业务性能数据分析,在国内尚属首创. 移动社交.移动支付到移动多媒体,移动互联网的兴起,使得移动应用得以更为广泛地渗透到社会经济的各个领域.更多的产品和服务应用通过移动互联

监控宝携手华为云服务 助推云服务生态圈

监控宝携手华为云服务  助推云服务生态圈 近日,云智慧(北京)科技有限公司(以下简称:监控宝)与华为云服务达成云计算产品服务合作意向书.在合作共赢的基础上,共同构建长期.稳定的合作伙伴关系,通过华为云服务平台,携手向企业级用户提供更中立.专业.全面的云基础服务和增值服务. 随着云服务在国内市场的发展成熟,中国的云服务企业在IaaS层面上的竞争正如火如荼.企业级用户在降低成本采用租赁的模式来获取IT基础服务的同时,面对众多层次不齐的产品服务也眼花缭乱,可以说,云存储.云主机等基础云服务正在走向红海

监控宝:2014年4月行业网站性能指数

根据监控宝分布在北京.上海.深圳等12个国内监测点,对电子商务.在线教育.视频.金融服务.网页游戏等五个行业的网站响应时间和网站可用率监控结果,以下是最近两周(2014年4月1日--4月14日)各行业网站性能指数分析,如图所示: 数据说明:电商行业网站可用率100%,响应时间平均指数为576.929ms,排在前三位的是苏宁易购.天猫和1号店,网站响应时间分别是273.51ms.312.99ms和324.53ms. 数据说明:在线教育行业网站可用率100%,响应时间平均指数为731.55ms,排在