什么是 Apdex 分数?

2023 年 9 月 26 日

什么是 Apdex 分数?

应用程序性能指数 (Apdex) 分数是一个开放标准定量指标,用于衡量用户对一个组织的 Web 应用程序和服务的响应时间的满意程度。

各组织有动力收集与其 IT 应用程序相关的许多性能指标,这样,就能够更好地了解性能、发现问题并确定改善这些应用程序整体运行状况的方法。所有这些指标都有助于提高用户的整体满意度。但是,有时可能很难将各种指标整理成对应用程序是否正常运行的简单理解。这个问题可以通过 Apdex 分数来解决,该分数根据应用程序响应时间是低于还是高于设定的阈值来确定客户满意度。

Apdex 分数通常用作 应用性能管理  (APM) 的组成部分,APM 有时被称为应用程序性能监控。

由此产生的 Apdex 值是用户满意度的一个数值指标,采用 0 到 1(0 表示沮丧;1 表示满意)的标度表示。与平均响应时间数据相比,它旨在提供更平衡的用户对加载时间满意度的理解,平均响应时间数据可能会因一个缓慢的加载时间(例如,一分钟)而产生偏差。Apdex 分数单独处理响应时间的每个实例,而不是创建一个总分数。

NetForecast 的创始人 Peter Sevcik 率先认识到1 使用简单统一的开放标准来衡量应用程序质量的可能性。他领导的行业专家组制定了 Apdex 技术规范。不久之后,Apdex 联盟采用了 Apdex 标准,现在该标准已被许多组织所用。

对许多组织来说,维护 Apdex 分数是一个近乎实时的关键性能指标 (KPI)。它创建了一个框架,用于报告、基准测试和评定应用程序的响应时间,以及评估用户满意度,最终目标是提供卓越的用户体验。

黑人女性正在使用笔记本电脑

掌握最新科技新闻

在 Think 时事通讯中每周获取有关 AI、安全、云等领域的深入洞察分析、研究和专家观点。

什么是 Apdex 阈值?

确定 Apdex 分数时,首先设置一个 Apdex 阈值,该阈值表示相关组织认为可以容忍的响应时间。通过设置恒定阈值,组织更容易跟踪随时间发生的变化。每个组织都需要确定自己的响应时间阈值,因为没有每个组织都使用的通用阈值。

各组织通常会根据以下几个因素来确定自己的阈值:

  • 最终用户期望:各组织可以在跟踪 Apdex 分数之前查询其用户群,了解他们认为合适的响应时间。

  • 行业标准:不同行业的组织可能有不同的响应时间标准。例如,对于为最终用户需要立即实时访问的内容提供支持的应用程序,其阈值应该较低。股票交易平台和票务服务提供商(如 Ticketmaster 或 StubHub)需要极短的加载时间,以便最终用户能够在不断变化的零和市场中交易股票或购买门票。其他应用程序,例如用于访问新闻或娱乐内容的应用程序,可能不需要那么短的响应时间。
IBM DevOps

什么是 DevOps?

Andrea Crawford 阐述了什么是开发运维、开发运维的价值,以及开发运维实践和工具如何帮助您完成从应用程序构思到生产的整个软件交付管道。本课程由 IBM 资深思想领袖主导,旨在帮助企业领导者获得所需的知识,以优先考虑能够推动增长的 AI 投资。

Apdex 评分的工作原理

Apdex 的公式是一个比率分数,用于根据设定的阈值确定应用程序加载时间。每次用户体验中都会根据他们经历的加载时间为 Apdex 分数做出贡献。

用户体验分为以下三个类别之一:

  • 令人满意的响应时间:如果响应时间等于或低于设定的阈值,则表明 Apdex 分数良好。

  • 可容忍的响应时间:这是指响应时间大于阈值,但小于阈值的四倍。

  • 响应时间不理想:指响应时间大于或等于阈值的四倍。

然后,将满意的响应时间(满意计数)与可容忍响应时间(可容忍计数)的一半相加,再除以样本总数即可确定 Apdex 分数。

Apdex 标度的范围为 0(表示没有用户满意)到 1(表示所有用户都满意)。Apdex 分数较低可能意味着,组织需要通过 APM、问题管理和站点可靠性工程等实践来提高解决问题和优化性能的能力。

提高 Apdex 分数的方法

Apdex 分数不佳可能表明相关组织当前的 IT 运营存在问题。以下是各组织如何提自己的 Apdex 分数的几个示例和用例。

优化代码和数据库查询:如果组织的数据库配置不当,代码效率低下,Apdex 分数很可能会很低。例如,不合格的代码可能需要比必需量更多的 CPU 和内存资源,从而降低加载速度。优化代码和数据库查询是提高 Apdex 分数的最佳途径。

尽量减少外部请求:向第三方服务发出 API 调用请求会对 Web 服务造成巨大压力,并导致高延迟。Apdex 分数较低的组织应考虑重新审视其外部请求,确保这些请求是必要、有价值的并且不会显著增加延迟。

使用内容交付网络 (CDN): CDN  是一个由地理位置分散的服务器组成的系统,公司使用它通过离用户最近的服务器完成请求来更快地向用户交付内容。 例如,如果德国的用户想要访问托管在纽约的网页内容,则该用户的请求将由相关公司位于欧洲的边缘服务器而不是纽约的服务器来满足。这样,通过减少数据必须传输的距离可减少延迟

使用异步处理来完成繁重任务:采用异步处理,可在相互通信的环境中的系统之间分配应用程序所需的处理。异步处理将繁重任务转移到单独的进程,从而释放资源,以便主线程可以处理用户请求。

扩展服务器以满足不断增长的流量需求:如果无法增加服务器容量或使用负载平衡,则流量大幅增加可能会导致响应速度变慢。使用能够根据实时需求主动自动分配网络资源的平台,例如 IBM® Turbonomic®,可以帮助缓解这个问题。

Apdex 分数的好处

使用 Apdex 分数来跟踪性能的组织可获得多种好处:

缩短网络响应时间:通过跟踪 Apdex 分数,各组织能够更准确地了解其应用程序和服务性能。这些信息有助于缩短响应时间,并使组织能够更快地向用户提供相关内容。

用户更满意:注重 Apdex 分数的组织可能会更加关注并满足用户体验。持续监控和提高 Apdex 分数可以减少沮丧的用户,满意度更高的客户将成为组织的坚定拥护者。

遵守服务级别协议 (SLA):组织的 SLA 可以指定应用程序的加载时间。如果加载时间始终长于 SLA 中的规定,组织可能会违反与用户达成的协议。

数据驱动型决策:跟踪 Apdex 分数可为企业领导者提供可靠的数据,从而帮助他们针对 Web 应用程序性能做出更明智的决策。这样做,可以创建一个更有条理的系统来跟踪客户满意度,而不是依赖传闻或不太准确的指标。

相关解决方案
应用程序性能监视 (APM)

使用 IBM Instana Observability 自动观察、监控和修复您的整个应用程序堆栈。

深入了解应用程序性能监控
应用程序管理服务

在您的定制应用程序组合中实现最佳性能,同时提高用户满意度。

深入了解应用程序管理服务
应用性能管理软件和解决方案

将全栈可观察性与自动化应用资源管理相结合,在性能问题影响客户体验之前将其解决。

深入了解应用性能管理解决方案
采取下一步行动

借助 IBM Instana Observability,达到全面的企业可观察性,从而实现快速、自动化和情境化的可见性,以了解整个应用程序环境的运行状况和可用性。

深入了解 Instana Observability 免费试用
脚注

1Apdex 的历史”,Apdex.org