Apdex 应用性能指数

Apdex 应用性能指数

什么是 Apdex

Apdex (Application Performance Index) 应用性能指数, 也被称为 满意度。是由 Apdex 联盟开放的用于评估应用性能的工业标准。标准从用户的角度出发,将对应用响应时间的表现,转为用户对于应用性能的可量化为范围为 0 - 1 的满意度评价。

FrontJS 里的 Apdex 指标

FrontJS 中的 Apdex 遵守 Apdex-R 规范, Apdex 指标中定义了一个阈值 T, T 被认为是应用能使用户能感到舒适的最长响应时间。

Apdex 对于应用的每次响应计时, 并划定区间, 时间小于 T 的响应被认为用户是满意的, 时间介于 T 到 4T 之间的响应被认为是用户可以接受的, 而大于 4T 的响应时间被认为是让用户不可接受的。

应用响应时间区间 用户评价区域
< T 满意 (Satisfied Zone)
T - 4T 可容忍 (Tolerating Zone)
> 4T 不可接受 (Frustrated Zone)

依据每次请求的响应时间落在某个区间的次数,来计算出 Apdex 的具体值:

Apdex = (count(<T) + 0.5 * count(T-4T)) / count(all)

Apdex 最终结果是一个介于 0 到 1 之间的两位数小数, 可以用来评价用户满意度, FrontJS 对于不同的 Apdex 值也会有不同的颜色来指示, 具体评定结果见下表:

Apdex 值范围 评价结果 FrontJS 中颜色标识
0.94 - 1 优秀 (Excellent) 蓝色
0.85 - 0.93 良好 (Good) 绿色
0.70 - 0.84 一般 (Fair) 黄色
0.50 - 0.69 糟糕 (Poor) 红色
0 - 0.49 不能被接受 (Unacceptable) 灰色

如何确定和设置 Apdex T

在 FrontJS 中, 用户可以在 项目管理 - Apdex T 中为不同的指标设置相应的 Apdex T 值。

监控指标 适用项目类型 默认值 备注
页面完全加载时间 Web 4 页面从开始加载到所有资源加载完毕的时间 通常暗示用户访问页面的首屏时间
网络请求响应时间 Web / 小程序 0.5 网络请求服务器响应时间 通常暗示服务器受理请求的能力
资源请求响应时间 Web / 小程序 0.2 资源请求服务器响应时间 通常暗示静态资源服务器或 CDN 处理静态资源的能力

默认值为适用于大部分项目的评价标准, 对于具体的应用可能需要设定贴合应用实际的标准。

一般 Apdex T 值应当设置为能让用户感到满意的最长响应时间。

参考阅读

Apdex-G and Apdex-R 规范
Apdex FAQ