返回 登录
0

全栈溯源重新定义APM

说起APM,对大家来说可能并不陌生,APM,即Application Performance Management,应用性能管理,是指对企业系统即时监控以实现对应用程序性能管理和故障管理的系统化的解决方案,经过几年的发展,APM逐渐走向成熟,但Gartner 在 2016 年,对 APM 重新规划了标准,即需要满足数字化体验监控(DEM), 应用的发现、深入追踪与诊断(ADTD) ,应用分析(AA) 这三个条件才能称作真正的 APM。在这组概念中, Gartner 认为 APM 的核心功能则是能够基于应用去做问题的发现与诊断。

而随着容器、微服务、DevOps、移动化、敏捷开发的迅速普及,如何基于应用迅速发现问题、诊断问题也变得更加困难起来:

容器,微服务的出现,将应用割离的更加“破碎”,“拼接”起完整的应用成了一件不容易的事情;新架构、新技术使得应用变得错综复杂,应用之间的关系也变得“扑朔迷离”;全方位监控的要求,令现在只能监控到30%用户问题的传统监控方案捉襟见肘;用户对性能的要求逐渐转移到用户体验方面,这使的IT部门更加头痛不已;而DevOps、敏捷开发也对快速发现应用性能问题提出了更高的要求。

在这样的情况下,企业需要一个能够对应用性能进行更加全面有效的监控,在现有复杂多变的条件下迅速找到用户性能问题源头的解决方案,以应对新时代的挑战。

全栈溯源解难题

为了帮助企业用户应对新时期在应用性能监控方面遇到的问题,实现不同业务逻辑下的性能排障,国内领先的应用性能管理服务提供商听云于2016年推出了全栈溯源解决方案,它在国内首次实现了全端、跨应用监控。2017 年,面对现阶段复杂的全栈环境,听云又对全栈溯源进行了全面升级,从而更好的帮助用户进行应用性能监控和管理。

所谓全栈溯源,就是从用户体验出发,基于事务请求进行全栈问题的定位追踪。全栈溯源包括:
• APP端事务请求全栈溯源
• 浏览器页面事务请求全栈溯源
• 拨测事务请求全栈溯源
• 单用户全栈溯源

“全栈溯源”是全球APM行业的趋势,在国外,Dynatrace、AppDynamics这些老牌APM厂商已经将全栈溯源成为了产品的标配。而听云的全栈溯源又和这些国外厂商有何区别呢?听云产品副总裁Moca表示,听云的服务体系更符合国内企业的要求。而国外的APM一般不支持国内的组件,如达梦数据库等非常国产化的产品这些厂商是不支持的,听云对阿里云的基于微服务的框架支持的很好,但国外的产品无法支持。另外,听云定义全栈溯源核心的一点就是可以支持多种复杂的环境,即客户无论使用怎样的生产环境,听云都能够给予支持。

基于用户体验的APM

不过,听云全栈溯源解决方案和传统应用性能管理系统最大的不同点还在于,听云全栈溯源解决方案是基于提升用户体验为标准的APM解决方案,而用户体验的标准千差万别,听云是如何解决这个问题?同时,有哪些企业愿意为用户体验买单呢?对此,Moca介绍说,听云有一套评判用户体验的机制,首先,用户可以结合其自身来定义用户体验问题,比如反应快慢的时间是可以自定义的,同时,系统本身会有一个标准的用户体验的默认值。其次,在用户感知层面,比如首屏时间、点击控件的时间等,系统都会关联一些请求,来发现是不是由于请求慢所造成的用户体验不佳。举个例子,可能在后台监控程序中,页面打开是很慢的,但是在用户体验层面是感觉不到慢的,所以系统会有首屏时间的概念,因为首屏慢是用户能够真实体验到的,这种情况就可以基于慢首屏来做全栈溯源。听云所提出的用户体验,方向是可感知的用户体验层面,因此客户可以自定义指标,可以针对某一条请求做监控,也可以针对一个步骤流程做监控。

图片描述
听云产品副总裁Moca

至于哪些企业愿意为用户体验买单,Moca认为,传统企业中的每个行业都不同,比如证券行业,他们内部对用户体验没有专门的指标,这样的情况下接受全栈溯源就会比较难。但是比如航空、物流、银行、零售、快消等,他们顺应互联网的潮流把一些新的业务放在2C端,相应的就会比较重视用户体验,因此对于全栈溯源的接受程度较高。另外,这也和企业的CTO有关,现在很多传统企业的CTO都会找互联网企业的CTO来担任,这样的企业接受全栈溯源也是比较顺利的。总体来说,有2C业务的企业,接受起来会非常快。同时,领导重视用户体验的、注重内部工作流的企业也会比较轻松的接受全栈溯源。

应对微服务、容器等新技术

那么,针对现在的微服务、容器等新技术新架构,听云的全栈溯源如何更好的解决应用性能监控的问题呢?在谈到这个问题时,Moca表示,微服务,简单来说就是把一整个系统分为多个细小的服务。以听云为例,听云的服务器端的整个监控系统,包括报表、数据库查询等系统,现在都把它拆分成了一个个微服务。这里的挑战就是在于我们以前很清楚A、B、C这三个应用组成了一个系统,然而现在我们不知道A、B、C这其中哪些微服务组成了一个系统。 听云真切的意识到微服务会影响到企业的架构,因为听云本身也在用微服务和容器,它们会带来灵活、可扩展性强等很多好处,但是在业务管理也会带来很多的瓶颈,定位一个问题需要定位到某一个具体的微服务。如果是容器,则需要考虑映射到哪个主机等等,这些都是听云在努力的方向。听云目前已经支持容器,因为容器的核心就是可以动态扩展,当动态扩展的同时,就会变成很多实例,就可以动态的根据这些实例去扩展。所以现在如果忽略容器这一层,把具体定位到的错误以及容器和主机映射到一起,就能知道系统级别、基础架构下的哪一方面出现了什么问题,然后定位到应用级别,再把应用拆开,就能够看出这个应用映射到哪个容器和哪个服务器,从而实现对应用的监控。

Moca最后表示:“传统APM是应用级别的监控,新的APM全栈溯源是基于用户体验级别为主导的监控。全栈溯源是有方向、有目的的,新的全栈溯源基于新型的IT运维模式, 能够更好的满足当前新型的IT运维模式,从而帮助传统企业更加轻松的实现数字化转型。”

评论