应用性能管理的现状与发展

1、APM现状与面临的挑战

如今,各个行业、各个企业都面临着越来越复杂的经营环境,创新、转型成为在复杂环境中追求持续增长的重要方向和实施路径。创新意味着利用新的思想或运作方式来实施变革,进而推动转型和持续增长。对于企业来说,创新需要打破常规,将业务与新技术融合,通过技术手段实现新的、更加便捷的业务模式,从而实现卓越的运营机制,使企业的利益最大化。

在业务与新技术的融合过程中,信息技术无疑起到了重要的作用。目前IT应用已经渗透到各行业,不仅有效管理企业的人、财、物,而且在重塑企业价值链、创新商业模式中发挥重要的作用。随着IT应用的深入,企业的IT应用也日益复杂化。

除了日益激增的IT应用复杂性,企业同时面临业务需求更快的变化,用户期望持续攀升,需要更高的性价比等方面的影响,在这些因素的影响下,IT应用在运行过程中发生诸如性能下降或者服务不可用等故障的可能性大大增加,从而影响业务服务的正常运行。因此有效地管理这些应用,是业务发展的迫切需要,应用性能管理(简称APM)的提出就是为了满足这种需求。

近几年,APM快速发展,特别是厂家主动地调研用户需求,有针对性的开发适合用户要求的功能和服务,研究如何更加贴近用户、贴心服务,从而推动用户需求,同时使APM解决方案也变的更加复杂与多样。

2、APM发展阶段

从90年代末APM理念出现到今天的产品方案,APM受到技术、市场、产品的冲击与更新到现在,大致分为三个阶段:第一阶段是以网络为中心,网络速度=应用速度。1996年Tivoli与HP公司开发了从应用程序层面出发的应用响应管理开发包(ARM API 1.0),随后的2.0版本被The Open Group批准为开放标准。1998年提出的面向商业的网络管理(BONM)概念,BONM被定义为以协助网络管理者测量和提高运行网络端到端的性能,它的功能包括监控和故障发现、带宽管理、数据分析和服务水平等级协议(SLA)等,APM这个理念正式作为这种软件技术的一部分提出。由此2003年IETF还专门为APM定义了管理信息库(SNMP-MIB)。第二阶段是以IT部件\组件为中心,部件\组件健康监控,基础设施可用性监控。这个阶段伴随各种IT基础架构组件的发布,如:网络、系统、中间件、数据库。第三阶段是以IT应用为中心,高度复杂,交易为核心,面向用户,面向应用生命周期管理。近年来,Hyperic HQ大受欢迎,凭借良好的开源和可扩展性,有针对性的开发适合用户要求的功能和服务,成为性价比最优的APM解决方案,在中国市场赢得了大量客户。

经过上述这三个阶段近15年的发展,APM领域已经形成了较完善的相关管理标准与解决方案。

 

图一:在云环境中的应用性能管理

 

3、APM核心功能

APM解决方案厂家依照Gartner的5维评估标准,尽可能的对分布式应用、模块化应用及基础架构蓝图提供性能管理能力。然而,随着应用结构和基础架构日益复杂化、多样化、扩展性及动态化发展,早期的5维度APM功能已无法满足新的监测、分析和管理需求,因此,新一代的APM产品需要更多的功能和可扩展性以满足新环境的性能分析和管理。Gartner列出了5个维度的功能,用来衡量APM厂家对用户的需求满足能力,分别是:最终用户体验监控(End-user experience monitoring)、用户自定义事务处理剖析(User-defined transaction profiling)、应用组件发现和建模(Application component discovery and modeling)、应用组件深入监控(Application component deep-dive monitoring),以及应用性能数据库功能(Application performance management database capabilities)。

应用组件发现与建模

获得应用程序组件的可视性,加快故障解决。在执行用户自定义事务处理的时候,应用组件发现与建模能发现哪些软件和硬件组件被使用,以及在支持用户自定义事务执行路径方面,这些组件的彼此调用关系。APM解决方案帮助技术运行团队的快速识别复杂IT应用组件和自动映射交易路径显示交易拓扑结构,加速故障定位与修复。

最终用户体验监控

采用非入侵的方式(低性能损耗)在异构环境中跟踪最终用户真实体验,并帮助确保SLA合规性,第一时间掌握哪些用户受到影响。这一阶段的APM方案实现了让技术运行团队人员在不直接访问应用程序的情况下,更好地了解应用程序运行状态和从最终用户的角度来看关键交易路径性能,把真实的数据反馈给产品研发测试团队。该方案易于部署,完全非侵入式,甚至可以扩展到移动设备(BYOD)上运行的应用程序。

 

 

图二:页面加载时间划分与故障域定位

 

交易事务追踪

快速识别和隔离可用性与性能问题。技术运行人员可以通过关键交易的逻辑执行步骤顺序,在物理、虚拟或云环境中的复合IT应用中进行阻断与隔离。该方案支持交易追踪代理和无代理技术。无代理的追踪,能够快速部署到整个IT基础设施和IT应用服务上,实现每笔交易追踪功能。当需要更深入的信息,可以选择性地部署交易追踪代理提供更多的数据采集与可视化。实现自动的业务交易映射,24x7的覆盖所有的交易。此外,这一阶段的方案提供分析仪表板很容易地看出哪一个交易失败的受到影响的用户是谁。

 

图三:全面应用性能管理五个维度的解决方案

应用深入诊断

有利于诊断和修复应用程序的性能问题。这一阶段的APM方案帮助确定性能问题的根本原因,然后加速修复过程中尽量减少对业务的影响。应用深入诊断会以发现的交易为路径,确定交易慢在哪儿,为什么失败。支持离线转储分析,自动检测线程死锁。线程状态,资源等待,线程堆栈内容和代码分析。

预测分析

基于性能管理数据库(PMDB)支持预测分析和容量规划,以实现积极主动的管理。面向APM的生命周期管理,经验上技术运行团队总是疲于应对生产故障。应用分析预防问题不要让它进入生产,实现自动分析,测试自动化。支持性能预测,趋势和容量的分析,当前阶段的APM解决方案帮助技术运行团队,及早进行性能分析,在应用性能出现瓶颈实现解决问题,减少停机、提高性能和优化利用资源。

关于PMDB的产生,是由于每一个维度的监控都会生成大量的数据集,这些数据集不仅需要过滤,而且要关联在一起,进行综合分析才能产生业务价值。例如:一个典型的交易用例场景跨四个维度。基于最终用户体验监控数据的预警表明,用例A响应时间越来越慢,并将超过严重的阈值;技术运行团队转移到了交易事务追踪维度,事务分析发现超时根源,是由一台运行Weblogic的应用服务器导致;同时通过对应用组件发现与建模的帮助,精确定位该应用服务器在整个业务系统中的逻辑关系与重要性;通过应用深入诊断工具来明确应用服务器中的哪个JVM和方法造成了时间消耗;最终再通过应用组件关系与模型的深入发现,确定这个JVM和方法运行在哪些IT基础架构组件和应用程序,从而对它们进行隔离或修复。以上各个维度内部或跨维度分析的工作流程都要能够迅速过滤、关联和分析大量数据,这些实时性要求非常高的过滤、关联、数据存储与分析都要以PMDB为基础来实现。

 

4、APM发展趋势预测

在2010年,Gartner对未来5年的APM发展趋势做了预测和说明。除了APM 2010的5项内容外,新增了一些其他项,内容分别是:

策略和调度引擎(应用自动化:实施基础架构和运行自动化)

应用行为学习

众包与协作平台

云计算支持

成本分配和计费

图四:未来5年的AMP发展趋势的预测

 

2013年,某著名APM解决方案厂商,对APM做了五大预测:

 

预测1:IT复杂性将继续推动业务关键型应用的管理。无论是在互联网边缘,还是在云端或数据中心,IT环境都在继续走向复杂化,这使得各类组织对新一代APM的需求日益扩大。借助新一代APM,IT人员能够对整个应用传输链(包括第三方服务和云服务)形成统一的实时洞察。有了这样的洞察能力,再加上APM系统提供的24/7全天候应用性能透视能力,各类组织就能实现全面的应用性能优化,即从用户设备开始,经由云端和数据中心的所有层次,直到记录系统,如此往复。这样一来,组织就能防止潜在问题的发生,保护用户免受影响。

 

预测2:在一套完整的APM解决方案中,性能分析将成为一项必备功能。当今组织的数据收集量可谓空前庞大。要掌握并利用这些数据,关键是数据管理系统必须能实现自动化分析,并为IT人员提供具有可操作性的洞察和答案,而不是制造更多的数据。新一代APM解决方案将为所有利益相关方提供一套日益完善的统一化数据管理系统。利用这样的系统,业务负责人就能即时获得必要的洞察,以确保各种应用能够有效支持业务目标的达成,IT人员也能获得只与交易相关的详细信息,以优化应用性能并确保服务的稳定性和可扩展性。

 

预测3:移动热潮将推动移动应用的产业化。如今的用户正通过海量的移动设备和应用程序来使用各种应用服务。在金融服务和电子商务等许多市场上,移动应用已日趋成熟,并逐渐成为商家与顾客互动的首选方式。移动应用的爆炸式增长方兴未艾,这也促使终端用户对应用性能的期望值不断提升。新一代APM软件能够降低移动应用的复杂度并支持应用优化,能够帮助组织在快速变化的环境中保持业务竞争力。

 

预测4:APM软件将成为大数据解决方案的战略要素。大数据正在从一种实验性解决方案发展为企业级分析平台。面对数据量、数据种类、数据速率以及数据复杂性的不断增加,组织需要一种全新的企业级分析方法。通过将新一代APM软件集成到大数据环境中,组织能够有效消除性能低下、可用性不足及可扩展性不佳所带来的风险和成本。这种方式将成为一种最佳实践。先期采用这种方式的组织已经发现,强大的硬件并不一定能提供高速的大数据应用。

 

预测5:全生命周期式的应用性能管理将促进DevOps和敏捷运营的普及。一些领先的组织已经开始使用新一代APM来支持应用生命周期(开发、测试和生产)的统一管理。随着DevOps和敏捷运营逐渐普及,将有更多的组织采取全生命周期式的应用性能管理模式。利用这种模式,组织可以对重复且耗时的工作任务进行自动化,并显著改善传统业务孤岛中的业务流程。这意味着组织能够加快应用速度、将新应用更加迅速地投放市场,并提前解决潜在问题,以消除生产隐患。

5、总结

成功的 APM解决方案,应该在应用环境中能够有效地解决以上这些维度的问题,同时在交付的应用服务相关的IT基础设施的可被有效管理也至关重要。比如:数据中心、网络、J2EE\.NET\C++应用、基础服务等都需要从应用依赖角度分解、综合APM方案考核的各个维度,特别的最终用户体验与可用性监控。

 

北京铸锐数码,是中国较早关注APM领域的软件公司,为各行各业用户提供了适合自身需求的APM产品和解决方案。