什么是APM应用性能管理?有哪些服务商?
发布网友
发布时间:2022-04-20 09:40
我来回答
共1个回答
热心网友
时间:2023-10-04 23:59
APM (Application Performance Management,即应用性能管理,在分布式领域也称为分布式跟踪管理)对企业的应用系统进行实时监控,它是用于实现对应用程序性能管理和故障管理的系统化的解决方案。
随着分布式系统和微服务架构的应用和发展,应用性能管理成为系统运维管理和网络管理的一个重要方向,它能够对企业的关键业务应用进行监测、优化,提高企业应用的可靠性和质量,保证用户得到良好的服务,降低IT总拥有成本(TCO)。应用性能管理APM能够对整个企业的IT系统各个层面进行集中的性能监控,并对有可能出现的性能问题进行及时、准确的分析和处理。它能轻松地从一个IT应用系统中找到故障点,并提供有相关解决建议或方法,从而提高整体的系统性能。一个企业的关键业务应用的性能强大,可以保证企业业务应用系统的高效性和稳定性,为企业带来核心竞争力的提升。
当下成熟的互联网公司都建立有从基础设施到应用程序的全方位监控系统,力求及时发现故障进行处理并为优化程序提供性能数据支持,降低整体运维成本。国内外商业的APM有Compuware、iMaster、博睿Bonree、听云、New Relic、云智慧、OneAPM、AppDyn、Amics等。 本文主要针对Java技术体系介绍APM的框架、核心功能以及业界主流APM工具的功能特点。
随着互联网技术和应用的快速发展,应用程序本身变得越来越难以管理,因为它们从单体架构转向高度分布的、多层、多元素的分布式应用架构,应用系统在许多情况下依赖于应用程序的开发框架。APM概念框架旨在帮助企业优先考虑在IT系统架构中需要首先关注的方法,以便企业能够快速实施并全面了解五维APM模型。
APM被形象的称为应用程序的私人医生,越来越收到企业的青睐,比起通过日志方式记录关键数据显然要更加实用,APM主要包含如下核心功能:
基于Java体系的应用程序运行时的性能指标可通过Java.lang.Runtime、java.lang.Management中的方法采集。除此之外,著名的Metrics类库也能够通过这些底层技术获取Java程序性能指标。CPU利用率、内存利用率等基础数据的采集仅仅是性能监控的一部分,Metrics提供了更为丰富的五个基本度量类型,可在此基础上开发满足需求的监控指标。
大多数企业希望有一个功能完善的APM系统具有JVM性能监控、服务调用追中、监控告警功能,CAT、PinPoint、SkyWalking、Hawkular相对来讲功能更为完备,推荐企业使用。