APM(应用性能管理)
在信息科学和系统控制领域,APM致力于监控和管理应用软件性能和可用性。通过监测和诊断复杂应用程序的性能问题,来保证软件应用程序的良好运行(预期的服务),APM已经商用
APM = Application Performance Management,应用性能管理,对企业系统即时监控以实现对应用程序性能管理和故障管理的系统化的解决方案。
应用性能管理是一个比较新的网络管理方向,主要指对企业的关键业务应用进行监测、优化,提高企业应用的可靠性和质量,保证用户得到良好的服务,降低IT总拥有成本(TCO)。一个企业的关键业务应用的性能强大,可以提高竞争力,并取得商业成功,因此,加强应用性能管理(APM)可以产生巨大商业利益。
应用性能管理主要功能如下:
监测企业关键应用性能:过去,企业的IT部门在测量系统性能时,一般重点测量为最终用户提供服务的硬件组件的利用率,如CPU利用率以及通过网络传输的字节数。虽然这种方法也提供了一些宝贵的信息,但却忽视了最重要的因素--最终用户的响应时间。现在通过事务处理过程监测、模拟等手段可真实测量用户响应时间,此外还可以报告谁正在使用某一应用、该应用的使用频率以及用户所进行的事务处理过程是否成功完成。
快速定位应用系统性能故障:通过对应用系统各种组件(数据库、中间件)的监测,迅速定位系统故障,如发生Oracle数据库死锁等问题。
优化系统性能:精确分析系统各个组件占用系统资源情况,中间件、数据库执行效率,根据应用系统性能要求提出专家建议,保证应用在整个寿命周期内使用的系统资源要求最少,节约TCO。
新应用性能管理环境的一个关键特性是部署在需要的地方:靠近服务。有多种方式来实现这一点:
· 在虚拟机管理程序环境中,监控空间内虚拟机的响应时间和资源消耗情况;
· 在没有管理程序(例如专用物理服务器)或管理程序遥不可及(即在IaaS环境)时,在操作系统上运行;
· 在容器内;
· 在Java或.Net应用服务器环境内;
·在终端用户设备,连续或按需即时下载。[3]
· 在虚拟机管理程序环境中,监控空间内虚拟机的响应时间和资源消耗情况;
· 在没有管理程序(例如专用物理服务器)或管理程序遥不可及(即在IaaS环境)时,在操作系统上运行;
· 在容器内;
· 在Java或.Net应用服务器环境内;
·在终端用户设备,连续或按需即时下载。[3]
如果这还没有让APM足够模糊,现在又出现了另一种新方法,即基于网络的APM,这是一个无代理系统,它充分深入到现有网络设备,观察整个企业内的网络内容和流量,分析应用响应时间,并使用有线协议识别错误。这有别于传统的APM方法,传统方法通常使用安装在应用服务器的代理,从IT环境选定的几个点(包括局域网、广域网和任何相关数据库)获取性能指标样本,以确定哪里的传统应用出现了问题。
虽然从其优势来看,基于网络的APM仍然有限,因为它通常用于查看应用在网络的节点之间需要走多远,但重要的是,很多供应商正将其包含在APM工具套件中。[4] 2015年开始,APM供应商推出的工具产品更加深入应用[5] ,包括基于用户响应时间的用户体验分析、业务交易分析、业务系统视图分析、故障定位分析等。
商业产品
听云的apm(端到端的全平台应用性能管理系统)
http://www.tingyun.com/lp.html?source=bd&plan=sem-chn-hxc-j&unit=apm&keyword=APM&e_adposition=cl1
oneapm
http://www.oneapm.com/solutions/apm.html
下一代APM
新一代APM:让整个IT团队参与应用性能监控。
好的APM可以让IT组织中原本孤立的各个方面集中在一起,比如自动生成准确的业务应用系统组件关系视图、关系视图实时更新、准确掌握应用访问逻辑关系等。APM工具可以帮助那些原本一直局限于监控自身领域的管理员,使他们成长为理解应用及其支持基础架构的更有战略价值的性能管理专业人员。
- 参考资料
-
- 1. Application performance management .Wiki[引用日期2014-05-20]
- 2. 什么是真正的APM .51CTO.2015-03-20[引用日期2016-04-10]
- 3. 混合服务交付问题?可求诸新的APM工具 .TechTarget[引用日期2015-06-05]
- 4. 基于网络的APM工具可以解决复杂的应用程序问题(一) .TechTarget[引用日期2015-11-02]
- 5. 银行金融APM应用性能解决方案 .百度文库[引用日期2015-12-28]
- 6. 下一代APM工具:让整个IT团队都参与应用性能管理 .TechTarget[引用日期2015-11-03]