主页

topics

APM (应用性能管理)简介

什么是 APM ?
应用性能管理 APM 软件和解决方案 订阅 Think 时事通讯
拼贴齿轮、机械臂、手机象形图的插图

发布时间:132024 年 11 月
撰稿人: Chrystal R.中国

什么是应用性能管理 (APM)?

应用性能管理 (APM) 是一种使用软件工具、数据分析和应用程序管理流程来帮助组织优化业务应用程序的性能、可用性和用户体验的实践。

作为可观测性解决方案的前身,APM 使 IT 团队能够在应用程序性能问题对用户产生负面影响之前,对其进行可视化、预防、预测和解决。

APM 也是应用性能监控的缩写,监控工具可持续收集有关应用程序性能指标的数据,如响应时间、错误率、资源利用率和用户活动。这些术语经常互换使用;然而,性能监控只是整体应用性能管理策略的一个组成部分。

除监控外,APM 还使用数据分析流程(识别趋势、异常和性能瓶颈)、故障排除协议(自动进行根本原因分析和问题解决)和优化工具(主动解决性能下降问题,最大限度地提高用户的应用程序效率)。

APM 解决方案还能帮助 IT 团队分辨哪些应用程序和服务对用户最重要,以及性能问题会如何影响用户的工作效率。

有效的 APM 工具以及先进的可观测性解决方案,对于依赖软件应用程序向最终用户提供服务的组织来说,具有无价之宝的价值。

实现云成本优化自动化的快速指南

深入学习 FinOps,了解其优势和挑战。

相关内容 注册获取可观测性企业指南
APM 工作原理

APM 工具可帮助开发人员维护企业应用程序的健康和性能,尤其是当组织的应用程序组合分布在不同的 IT 环境(如混合云多云)时。虽然 APM 系统的具体配置因企业(和工具)而异,但大多数领先的 APM 工具都在五个关键维度内运行(最初由 Gartner Research 发布)。

最终用户体验监测 (EUEM)

 

被动和主动终端用户体验监控工具可评估用户如何体验应用程序并与之互动。被动监控是指持续收集实际用户的用户数据(来自传感器、网络流量和错误日志)。

主动监控可模拟用户活动,以便更好地理解和预测情景软件行为(例如,在意外流量激增时,应用程序可能会如何运行)。

例如,APM 软件中的体验监控工具可以运行行为脚本(或路径),模拟客户在电子商务网站结账过程中的体验。然后,软件可以监控脚本,了解应用程序处理付款的速度以及如何处理结账吞吐量。 

运行时应用程序体系结构的发现和建模

运行时应用程序架构监控可提供应用程序底层架构的可见性。它使 IT 团队能够了解不同的应用程序组件和依赖关系(如数据库、服务器、网络设备和虚拟机)如何相互作用以支持应用程序。

APM 工具可自动完成建模过程,动态映射应用程序、服务、基础架构组件和用户交互的拓扑结构,尤其是跨内部部署数据中心私有云公有云(包括任何 SaaS 解决方案)和混合云环境的拓扑结构。APM 拓扑图可帮助 IT 团队快速识别性能瓶颈和优化机会。

用户定义的事务剖析


事务剖析也称为业务事务管理,它提供了一种更具体的监控方法。剖析功能可跟踪特定用户事务在应用堆栈中的移动过程,包括从用户设备到事务中涉及的每个应用组件或资源。

这种监控方法可让开发人员深入了解应用程序的关键特性和功能,从而在有问题或性能不佳的组件影响用户体验之前将其解决。
 

深潜式组件监测 (DDCM)
 

DDCM 专注于单个应用程序组件(如网络和应用程序服务器),监控特定代码段、外部服务调用、数据库查询以及代码级的其他元素。

检查特定应用程序组件可帮助团队快速确定性能问题的根本原因,并在不涉及无关组件的情况下进行有针对性的改进。

数据分析和报告

APM 软件会收集大量数据,而 APM 工具中的分析和报告功能是将捕获的数据转化为可操作洞察分析的核心。

APM 平台汇总从每个监控接触点收集的数据,创建易于理解的报告、仪表板和可视化内容,使 IT 团队能够识别性能趋势,并就解决方案和优化做出明智决策。
 

值得注意的是,Gartner Research 后来将其五个维度缩减为三个。最终用户体验监控现在称为数字体验监测 (DEM)。应用程序发现、跟踪和诊断 (ADTD) 包括三个以前独立但相互关联的功能:运行时架构发现、用户定义的事务剖析。报告和分析层面仍然是一个独立的功能。

什么是 APM (应用性能管理)?

APM (应用性能管理) 软件可帮助组织确保其关键应用满足性能、可用性和客户或最终用户体验方面的既定预期。 为此,APM 软件会衡量应用性能,在未达到性能基线时提醒管理员,深入揭示性能问题的根本原因,并自动解决许多性能问题,以免影响用户或业务。

APM 也是应用性能监控 的缩写。 这两个术语经常交替使用,但应用性能监控实际上是许多APM (应用性能管理) 的一个组成部分 - 因为说到底,必须要监控性能才能管理性能。 

然而, APM (应用性能管理) 解决方案逐渐从依赖于传统的应用性能监控工具,转变为整合可观测性,APM 是一种性能数据收集和分析技术,更适合应对现代分布式云原生应用的复杂性。 

APM 与可观测性

APM 解决方案为从应用程序内的服务获取丰富的数据和分析提供了一刀切的工具。它们使应用架构具有可观察性。虽然 APM 方法曾经足以满足高质量应用管理的需要,但现在却无法胜任管理具有多个运行时和多个层的分布式应用和服务的工作。

当今的应用依赖于服务和微服务,通常在容器化的 Kubernetes 集群中运行。这意味着需要多个运行时,每个运行时在架构内的不同位置输出日志。要使用 APM 适应多个运行时,开发人员需要部署多个 APM 工具。他们还需要使用日志流服务或其他聚合工具来整合各个地点的日志数据。

随着企业在架构中添加更多的服务和微服务,它们会带来更多的复杂性,在出现问题时更难跟踪请求。

可观测性解决方案采用整体的云原生方法来记录和监控应用程序,从而超越了 APM 工具。它们提供无缝流程自动化,并与历史上下文数据协同工作,帮助团队更好地优化企业应用程序。

借助可观测性工具,团队可以更好地了解服务如何相互协作(例如使用依赖关系图)以及如何融入整体架构。他们还可以使用可观察性解决方案来汇总和审核应用程序数据,并从这些数据中获得可操作的洞察分析。

APM 功能

如今的 APM 工具用途广泛,具有一系列可定制的功能,可帮助企业实施量身定制的 APM 战略。每项功能都能帮助 IT 团队在其应用程序生态系统中实现全栈可观测性。其中部分示例包括:

  • 应用程序监控:APM 工具监控整个应用程序堆栈,包括应用程序框架(如 Java 或 .NET)、操作系统和数据库、任何应用程序编程接口 (API) 或中间件以及网络应用程序服务器。
  • 错误跟踪: APM 解决方案可将相关的应用程序错误归类为问题组,为团队提供更多了解系统错误的背景信息,并最大限度地提高故障排除过程的效率。
  • 基础设施监控:利用 APM 基础设施监控协议,团队可以收集有关 CPU 利用率、磁盘空间和网络性能的数据。
  • 分布式跟踪:APM 工具使开发人员能够在数据请求穿越网络(从前端到后端服务)时对其进行跟踪,帮助团队监控每个请求的依赖性并隔离特定错误。
  • 数据库监控:APM 平台可帮助企业可视化主机级和查询性能指标(如顶级用户、程序和对象),并评估 SQL 程序,以确定数据库设计和资源饱和度如何影响应用程序性能。
  • 代码剖析:使用 APM 工具,团队可以拍摄代码性能快照,以发现哪些应用程序组件运行太慢或占用太多资源。
  • 数字体验监测:APM 工具可实施真实用户监控 (RUM) 和合成监测,以收集来自用户设备、机器人和其他非人类软件组件的性能数据(加载时间、响应时间、延迟、运行时间和停机时间)。
  • 物联网 (IoT) 监测: 由于用户通常使用移动设备访问应用程序,因此排除应用程序问题可能成为一个复杂、耗时的过程。APM 解决方案中的 IoT 监控功能可为团队提供跨连接设备的应用统一视图。
AI 和 AIOps:APM (应用性能管理) 的未来

如今的 APM (应用性能管理)工具正在不同程度地利用可观测性和人工智能。 有些将传统应用性能监控与人工智能相结合,自动发现变化的事务路径和应用依赖关系。 有些则将可观测性与人工智能相结合,自动确定性能基线,从 IT 运营管理 (ITOM) 数据“噪音”中筛选出信号或可行洞察。 行业分析机构 Gartner 发现,组织“通过使用人工智能增强工具,可以将 ITOM 中的噪音减少 60%”。

最终的目标以及 APM 和 IT 运营的未来是将可观测性与面向 IT 运营的人工智能 (AIOps) 相结合,创建自我修复、自我优化的基础架构。 通过将稳定的实时可观测性遥测数据流与 AIOps 机器学习和自动化相结合,可以根据系统输出预测应用性能问题,在其影响最终用户体验或运营之前加以解决,甚至还可以采取措施来优化应用性能,这一切都无需管理干预。

APM 用例

APM 有助于确保企业软件应用程序保持高效和可靠。它们还有助于:

容量规划
 

基于历史性能数据,APM 工具可预测未来的资源需求,从而实现更有效的容量规划,并帮助企业在需求增长时扩展基础设施。
 

DevOps 集成
 

APM 可促进在软件开发生命周期内不断获得反馈。团队可以监控暂存和生产环境中的应用程序,帮助开发人员建立持续反馈的文化。

遵守服务水平协议 (SLA) 
 

SLA 规定了大多数业务应用程序的性能标准,而 APM 服务则为维护 SLA 的合规性提供必要的数据。合规性指标还可用于利益相关者报告,以展示对 SLA 的遵守情况。

第三方 API 监控
 

对于使用外部 API 的应用程序,APM 工具可以跟踪 API 的响应时间和错误率,以便组织识别可能影响其应用程序性能的第三方服务问题。

APM 的优势

APM 工具可以帮助:

  • 增强用户体验。APM 工具可帮助企业保持较高的用户满意度和参与度,而这两者对于用户留存和声誉管理都至关重要。

  • 更快的 MTTD 和 MTTR。APM 使团队能够快速发现并修复性能问题和瓶颈,缩短平均检测时间(组织发现问题所需的时间)和 平均修复时间 (组织修复问题所需的时间)。

  • 更好地利用资源。 通过监测和分析性能数据,组织可以优化资源分配,节省更多成本并简化运营。

  • 提升业务灵活性。 APM 通过提供有关应用程序性能的实时反馈来支持灵活方法,从而实现快速迭代和持续改进。

  • 迁移更顺畅。 分布式跟踪和服务映射功能可帮助确保云迁移和现代化顺利进行,并且不会给网络带来错误。

  • 更好的员工协作。借助 APM 的端到端跟踪功能,前端和后端团队可以同时访问相同的数据,从而促进故障排除和优化流程的协作。
相关解决方案
IBM Instana Observability

了解面向混合云的领先企业可观察性平台。改进 APM 应用性能管理,加速推进 CI/CD 管道,而无论应用位于何处。

深入了解 IBM Instana Observability
IBM Turbonomic

利用智能自动化管理并持续优化您的混合云。

探索 IBM Turbonomic
资源 利用 AI 让您的 IT 运营面向未来

了解面向 IT 的 AI 如何改善业务成果、增加收入并降低组织的成本和风险。

什么是最终用户体验监控 (EUEM)?

终端用户体验监控 (EUEM) 是从终端用户的角度监测 IT 运营的性能和有效性的过程。

由 AI 支持的 IT 自动化

让 IT 运营的效率和安全永续性更上一层楼。

什么是站点可靠性工程 (SRE)?

SRE 使用软件工程来自动执行原本由系统管理员手动执行的 IT 运营任务。

全面了解不当的应用和基础架构资源分配如何导致用户响应时间变长和资源拥堵。

应用程序监测最佳实践

更好地了解哪种应用程序监控方法最适合您的企业

采取后续步骤

IBM Instana 提供人人都能使用的实时可观察性。它可以快速实现价值,同时确保您的可观察性策略能够跟上当今和未来环境的动态复杂性。从移动设备到大型机,Instana 支持超过 250 种技术,并且还在不断增加。

探索 IBM Instana 预约实时演示