7点钟,闹钟奏出欢快的曲调,窗帘缓缓拉开,懒懒的阳光照在你的脸上,室内温度自动调整到舒适的状态。还没起床,咖啡机开始煮一杯香醇咖啡,早餐开始加热等着你享用。准时出门,随着你的离开,家里的灯相继熄灭,窗帘自动合拢,大门自动上锁。
9点,你正在办公,手机给你推送:窗台上有不明物体。手指轻按,调出监控,原来,是家中调皮的小狗。
下午,女友来了电话,已经提早到了家门口。手指轻按,大门打开,灯亮起,空调开始运作,扫地机器人送来一束鲜花,咖啡机再次运作,随后,家庭影院开启……
作为苦逼的IT族,上述故事是可望不可及,真实的故事可能是这样的。
“老王,工时填报系统又不行了,这个项目查询的页面怎么也刷不出来”业务人员晓乐着急的问。
“是吗?我这边看一切正常啊,CPU也不高,网络不繁忙,数据库也还行,怎么就页面访问特别慢?”负责运维的老王说。
“这可不行,我们必须在上午填报好上周的工时,中午全国的老板会出统计数据,到时候还没有解决问题就通报批评了!”老板吴总说到。
“也是,这个页面平时访问都不慢阿,为什么一到周一就慢得像蜗牛,看来必须找开发人员具体分析下了”。
“不行,必须中午前搞定,等他们来查明问题黄花菜都凉了…….”
“老板要么我们试试用Oracle云服务吧,我上周刚申请了个试用帐号,Oracle有个应用性能监控的云服务,不需要我们搭建任何环境,而且数据秒级就能送到Oracle公有云进行分析,有了这个分析结果,找他们开发修改程序就顺理成章了!”
“太好了,那就抓紧时间试试吧”
“好吧,晓乐,你先去喝杯咖啡,我快速部署下,很快就知道什么地方有问题了”。
简单的部署架构及说明
Oracle APM云服务提供了基于公有云进行应用性能监控的主动式应用性能监控,通过简单的本地部署操作,APMCS能够将应用底层调用信息通过加密的方式传送到Oracle Public Cloud分析中心,经过分析迅速展现应用的整体的使用情况,并从页面,服务端请求以及应用服务器资源的三个不同维度进行分析,从而帮助运维人员最快的了解应用的性能状况以及快速定位出错原因。
即便是被监控系统出于安全考虑无法和互联网连接,Oracle APM云服务也支持通过部署中间的网关,基于网关提供加密数据的上传。
半个小时后。。。。。。。
“部署完成,让我们再看看到底是哪里出现了问题?”老王兴奋的叫到!
“你看,周一使用系统的人还真不少啊?” 晓乐说。
首先APMCS能从客户的角度了解系统的使用状况列出访问系统的各种会话列表,从会话列表你能看出在什么时间点在什么位置访问,以及采用的浏览器,操作系统和访问持续时间。
“那我们访问了哪些页面呢?”晓乐问。
“别急,让我们看看页面列表”
APMCS能够基于客户浏览的页面进行视图展现,在下面这个视图中能帮助我们很快确定各个页面的访问频率,访问量以及页面的用户满意度,也就是页面响应时间,从而快速了解客户体验。
在找到关注的页面后,点击进去,我们能看到此页的一些详细状况,比如各种度量,包括访问时段,加载时间,加载时间的细分等等。
作为页面性能问题的关键,现有应用的单一页面往往是由众多的页面子请求发起和进行调用,也就是AJAX调用,因此在选择Ajax调用的菜单后,可以一目了然的看到此页涉及的Ajax调用的性能信息,从而我们可以从页面的维度初步定为是页面中的哪个具体模块存在性能问题。
“你看,项目查询页面确实是慢阿,主要是里面的detail.list.action这个子请求太慢了”
老王说。
“下一步我们看看服务器系统那边的可以如何分解这个请求吧”
如果我们需要涉及性能问题的进一步定位和解决,可以借助Oracle APM云服务提供的服务器请求视图,从系统的角度迅速定位问题,服务器请求视图从后端的调用角度出发,给出每个调用具体的调用及性能详情,同时也能追踪到涉及的SQL语句。
点开服务器请求视图,首先会罗列所有的请求概览,帮助我们初步看到每个请求的响应时间,调用和错误以及在每层的平均消耗时间。
选择一个具体的调用,你可以看到涉及此服务器请求的调用细分,比如在下图中,花费在AppServer应用服务器上的时间是总时间的44.09%,而花费在数据库层的时间是55.91%。同时此调用涉及了两个不同的类的方法,和一系列的SQL语句。
在选择数据库的菜单后,我们可以看到每个SQL语句的调用状况和花费时间。如下图的Statement调用了27次,平局花费时间为330秒,最长响应时间为500秒。
“你看,所有的这些sql语句中,就这个assetscar-list.action中涉及的这个消耗时间最长,平均花费了5分钟有多”。
“好了,有了这个目标,我们去叫开发人员改进SQL语句吧”
“看来Oracle APM云服务确实是个好东西”
“那当然,有了它,我们就不怕各种性能问题的投诉了”,老王兴奋的说。
APM是什么?就像我们智能化的房子需要一个总控系统一样,APM就是我们IT系统运维的中枢神经,负责监控IT基础架构的方方面面。一切正常时,出出资源利用报表,有问题发生时,帮助我们快速解决问题。有了他运维才能真正过上简单的生活。
Oracle APM云服务对于我们传统运维的核心价值总体来说包括:
提供了针对应用的端对端的解决方案,帮助我们从客户的角度出发,基于客户浏览的页面进行视图展现,快速定位页面问题。
能够从服务端的请求出发,追踪到应用的类的调用以及数据库的SQL调用,帮助我们在出现问题时快速的逐级分解以及解决问题。
针对后端资源能进行多个层次的监控,从JVM,CPU占用,GC垃圾回收等不同的维度协助我们分析资源瓶颈和进行主动的资源监控。
Oracle APM云服务案例
国内某政府行业信息公司:用于固定资产系统中的性能的日常监管以及出现问题的性能排查。
国内某贸易公司: 用于电商平台的交易监控, 能够帮助客户真实感知最终用户体验,主动发现应用性能问题,快速定位到问题组件,最终实现以预防为主的主动式应用性能监控。
了解更多,敬请关注甲骨文开发者社区......
更多精彩,请大家关注以下二维码抢先注册!