APM 终端用户体验监控分析(上)
一.前言
理解用户体验是从终端用户角度了解应用交付质量的关键,这是考量业务健康运转的潜在因素。捕获此类数据的方法各种各样,具体的实现途径由应用、基础设施架构以及管理者和管理过程决定。
二.终端用户监控主要产品特性
- 基于网络的数据包捕获技术和各种端点检测方法一样,均为有效的监测技术,可以用来捕获用户体验。现在国内的拨测技术就是基于这个技术,通过在全国各地的
IDC 点来拨测被监控网站,测试其可用性和丢包率等参数,该产品国内外比较有代表性有:OneAPM
CloudTest、NewRelic、APPdynamic
这类产品主要通过监控网站、CDN、DNS 等的可用性、错误率等指标来确认网站的正常运行,下图是一款拨测产品的主界面视图,仅供大家参考

- 基于网络数据包捕获的有效部署途径会因关键位置聚集网络流量的能力而变化。
- 用基于标准语言写的富客户端应用需要进行额外监测。随着浏览器和其他端点监控能力的增强,客户端监控的有效性将增强,同时基于网络的数据包捕获技术将受到限制。这个时候就需要基于真实用户体验的监控软件进行补充了,这种软件就是以页面插入
js 代码的方式来实时抓取访问页面的用户的时间节点,来计算各种响应时间。
这类型的产品使用往往需要一些工作量,需要向页面插入代码,没有上面说过的 Cloud Test 这类产品这么方便,但是看在确实能看到真实的用户体验,这点儿时间花的还是值得的,国内外该类产品里面比较成熟的有:Browser Insight、Dynatrace、Newrelic 等
该类产品一般都是通过浏览器端的各个维度来评价终端用户的体验的,维度比较多,但是产品上手比较困难,一般需要有相当前端经验的人员才能快速适用,下图是上面说过的Browser Insight产品的纵览界面,供大家参考:

三.终端 APM 产品使用建议
- 根据当前或计划的基础设施变更,以及采用的基于云或分布式应用,来选择终端用户体验监控产品针对这些情况监控端点。
- 仅当现有网络性能监控或应用性能监控(APM)的投资不能满足新要求时才投资新工具,而且,最好选择一家厂商的产品,这样才不会因为厂商的差异性导致使用的不便利,而且,同一家提供商的产品也更有互补性
- 多调查那些提供多种监控方法和使用新兴端点监控功能的供应商,这样能确保你的产品的稳定性以及可靠性。现在国内外 APM
产品提供商比较有代表性的有:OneAPM、NewRelic、APPdynamic、Dynatrace 等。
四.模拟+真实
近年来,实施综合监控一直备受吹捧,鉴于其可通过网络应用来了解用户体验,而且未发现中断。循环检测和进行额外监控多年来已是 IT 操作中存在的一个事实。解决这种递归循环的方法即引入终端用户体验监控,通过监控穿越网络的数据来实现。该解决方法具有可见性,能进行检测,而之前通过模拟方法则无法实现。随着 CDNs的发展,基于云的服务和蜂窝连接会引起 datacenter-bound 技术在终端用户体验可见性方面存在漏洞。
在 2008 年发布的 Episodes 论文中,一种基于浏览器事件的测量方法为问世,随后即被 APM 供应商采用以满足终端用户体验监控需求。在这两种选项中,Gartner 看到企业根据不同业务类型来选择解决方案,甚至在单个企业中会采用两种解决方法,这也就是我们上文提到过的「模拟性能监控+真实用户体验监控」
使用更先进的监控工具之前,已通过元件监控产品检查具体基础架构组件发现了问题。市场的发展允许实施脚本化的事务处理,使用应用来「模拟」个体。通过该技术形成一个循环,这样 IT 运营团队在用户上传问题后就可对其进行监控。不过通过这些方法无法对个体使用应用时所发生的每个动作进行全方位的监控。这种可见漏洞促使这两种常用方法逐步完善,以通过应用来监控实际的用户交互。
五.总结
本文从现有的终端用户 APM 产品入手,向大家介绍了比较常见的几款 APM 产品,并分析了对于终端用户体验监控的使用建议等。在本系列文章的下篇中,会重点介绍基于网络数据包捕获方面的的产品以及浏览器标准对于终端用户体验监控的巨大补充。
Cloud Test 是基于云技术的实时监控系统,能够帮大家实时监控网站性能,监控 CDN、DNS、API 、事务监控等第三方服务提供商的可用性,实现应用性能及时监测及时报警。
想阅读更多技术文章,请访问OneAPM 官方技术博客。
本文编译自 Gartner 研究报告《End-User Experience Monitoring in APM: Past, Present and Future》
APM 终端用户体验监控分析(上)的更多相关文章
- APM终端用户体验监控分析(下)
一.前言 [APM 终端用户体验监控分析(上)][1]从 APM 终端用户产品特性.使用建议.以及从[真实用户体验][2]和[模拟性能监控][3]两方面入手给大家进行了简单的分享. 本文为下篇,将给大 ...
- 微服务、分库分表、分布式事务管理、APM链路跟踪性能分析演示项目
好多年没发博,最近有时间整理些东西,分享给大家. 所有内容都在github项目liuzhibin-cn/my-demo中,基于SpringBoot,演示Dubbo微服务 + Mycat, Shardi ...
- nagios-解决监控页面上的乱码
1. 前景 在nagios的监控页面上发现返回来的信息为乱码,如下图所示: 查看相关日志,发现正常显示汉字,如下: 2. 解决方法(以下两个步骤缺一不可) 主要原因分析如下: 在nagios服务器上发 ...
- JDK自带的监控分析工具JConsole
非常多开发人员认为自己懂Java编程.事实是大多数开发人员都仅仅领会到了Java平台的皮毛.所学也仅仅够应付工作. 作者将深度挖掘Java平台的核心功能.揭示一些鲜为人知的事实.帮助您解决最棘手的编程 ...
- (转载)Java多线程的监控分析工具(VisualVM)
原文链接:http://blog.csdn.net/chendc201/article/details/22905511 在Java多线程程序运行时,多数情况下我们不知道到底发生了什么,只有出了错误的 ...
- Linux操作系统监控分析
性能分析点:1. 负载机2.网络传输3.硬件4.应用程序线程池5.数据库连接池6.代码业务逻辑7.数据库sql执行时间8.jvm(GC) 操作系统硬件:cpu:计算.逻辑处理:CPU的颗粒数越多,CP ...
- Java虚拟机性能管理神器 - VisualVM(1) 简介 - JVM轻量级监控分析神器
目录(?)[-] 一VisualVM是什么 二如何获取VisualVM 三获取那个版本 四VisualVM能做什么 显示JAVA应用程序配置和运行时环境 显示本地和远程JAVA应用程序运行状态 监控应 ...
- Linux性能监控分析命令(五)—free命令介绍
性能监控分析的命令包括如下:1.vmstat2.sar3.iostat4.top5.free6.uptime7.netstat8.ps9.strace10.lsof 命令介绍:free命令是监控Lin ...
- Linux 监控分析
一.硬件基础 Cpu 逻辑的处理.计算.判断 现代分时多任务操作系统对 CPU 都是分时间片使用的:比如A进程占用10ms,然后B进程占用30ms,然后空闲60ms, 再又是A进程占10ms,B进 ...
随机推荐
- 【转载】10分钟学会理解和解决MySQL乱码问题
原文地址:http://cenalulu.github.io/mysql/mysql-mojibake/ 原文作者:Junyi Lu,卢钧轶 / cenalulu / Luke 查看原文.
- 13.python中的字典
字典其实和之前的元祖和列表功能相似,都是用来储存一系列对象的.也就是一种可变容器,或者是我所比喻的革新派的菜单. 但也不是完全相同,我在之前曾经将字典称为特殊的'序列',是字典拥有序列的部分特性,但是 ...
- ios 异步处理耗时操作
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_asy ...
- SQL Server 一些关键字详解(一)
1.CROSS APPLY 和OUTER APPLY MSDN解释如下(个人理解不是很清晰): 使用 APPLY 运算符可以为实现查询操作的外部表表达式返回的每个行调用表值函数.表值函数作为右输入,外 ...
- 转 在SQL Server中创建用户角色及授权(使用SQL语句)
目录 要想成功访问 SQL Server 数据库中的数据 我们需要两个方面的授权 完整的代码示例 使用存储过程来完成用户创建 实例 要想成功访问 SQL Server 数据库中的数据, 我们需要两个 ...
- uninstall 11.2.0.3.0 grid & database in linux 5.7
OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...
- 使用ImageLoader实现图片异步加载
注:下面使用的是包:1.8.4,其他版本包的,DisplayImageOptions defaultOptions和 ImageLoaderConfiguration config2配置不一样,请看官 ...
- MEF(Managed Extensibility Framework) 微软平台插件化开发
体验Managed Extensibility Framework精妙的设计 MEF(Managed Extensibility Framework)是.NET Framework 4.0一个重要 ...
- Objective-C编码规范
参考 http://www.csdn.net/article/2015-06-01/2824818-objective-c-style-guide/1 介绍 我们制定Objective-C编码规范的原 ...
- Install sheild设置了Blue皮肤,但是有的窗口更改不了问题
发现和顺序有关系:1.先指定skins:2.Release:3.再改对话框