您可以选择多种指标,但我们建议专注于以下八个指标,以便在您的 IT 组织中获得最大收益。
1. Apdex 和 SLA 分数
让我们从应用性能指数 (Apdex) 和服务水平协议 (SLA) 得分开始,因为它们是卓越客户体验的基础。您所测得的各项速度和速率,这些具体指标理应带来快速性能,但它们只是手段,而非目的。客户满意才是终极目标,并有望带动销售额的增长。
Apdex 和 SLA 分数是查看终端用户体验监控的最常见方式。Apdex 分数通过为 web 请求或事务的正常响应时间设定目标,来跟踪应用程序的相对性能。SLA 是客户合同中的指标,任何低于定义的 SLA 都可能导致客户体验下降(并可能引发预定的处罚)。
2. 应用程序可用性(也称为正常运行时间或 Web 性能监控)
这是最基本的指标:系统是否正常运行?您正在监控和衡量您的应用程序是否在线并可用。大多数公司使用它来衡量服务级别协议 (SLA) 的合规性。正常运行时间通常是评估系统整体可靠性和健康状况的简便方法。对于提供在线服务的组织而言,过长的停机时间会对用户满意度产生负面影响。对于 Web 应用程序,您可以通过简单的、定期安排的 HTTP 检查来验证可用性。
3. CPU 使用率(也称为资源使用率)
应用程序占用过多的 CPU 资源可能表明存在性能问题。CPU 使用率突然飙升可能会导致响应时间变慢。应用程序的需求波动也可能表明您需要增加更多应用程序实例。一个通用规则是,如果 CPU 使用率超过 70%,并且超过 30% 的时间处于该状态,可能意味着 CPU 容量不足。
资源使用量还可以包括内存和磁盘使用量。跟踪 RAM 帮助识别可能导致故障或需要更多内存的内存泄漏。磁盘使用率指标可以帮助防止应用程序耗尽持久存储,从而导致应用程序失败。高磁盘使用率也可能表明后端数据存储效率低下或数据保留策略存在问题。
4. 错误率
您的 APM 指标软件应监控应用程序,以记录导致失败的请求百分比。这有助于识别影响用户体验的问题并确定其优先解决方案。应用程序错误可能包括服务器错误、404 响应或 web 应用程序超时。您可以将 APM 解决方案配置为在错误率超过设定参数时发送通知。例如,当之前 25 个请求中有 2.5% 导致错误时发送警报。
5. 垃圾回收
垃圾回收 (GC) 可以通过识别并消除 Java 或其他语言中持续的高内存使用,从而提高性能。好消息是,GC 自动化可以回收分配给未使用或冗余对象的数据,这些对象或数据不再被应用程序使用。未使用的对象或数据将被删除,正在使用的对象将被复制到下一代内存池。这是一个希望保持在理想范围内的指标。如果 GC 运行过于频繁,则可能需要过多的开销;但是,如果 GC 运行频率不够,则系统可能内存不足。
6. 实例数量
通过跟踪实例,您可以根据任何时候正在运行的应用程序或服务器实例的数量,扩展您的应用程序以满足实际用户需求。这对于云应用程序尤其重要。自动扩展可以帮助确保现代应用程序根据需求进行扩展,并在非高峰时段节省预算。这也可能带来基础设施监控方面的挑战。例如,如果应用程序根据 CPU 使用率自动扩展,您可能永远看不到 CPU 使用率上升,相反,您可能会看到服务器实例的数量过度增加,随之而来的是更高的托管费用。
7. 请求速率
您可以衡量应用程序接收到的流量,以识别任何显著的下降、增加或同时在线的用户。将请求速率与其他应用性能指标关联起来,有助于了解软件应用的可扩展性。APM 软件还可以监控流量以识别异常情况。用户监控显示请求量异常增加可能表明发生了拒绝服务 (DoS) 攻击。同一用户的大量请求可能表明账户被黑客攻击。即使是异常低的请求量也可能是坏消息,没有流量或完全没有请求,可能意味着系统的某个部分出现了故障。
8. 响应时间(也称为持续时间)
通过跟踪请求的平均响应时间(即应用程序返回资源请求所需的时间),您可以评估应用程序的性能。这些请求可以包括由终端用户发起的事务,例如加载网页的请求,也可以包括应用程序内部的请求,比如一个进程或微服务从磁盘或内存中请求数据。总响应时间包括服务器响应时间(服务器处理请求所需的时间)加上网络延迟(请求在网络中移动所需的总时间)。
一个相关的指标是页面加载时间,用于衡量网页加载到浏览器中所需的时间。跟踪页面加载时间可以让您的应用程序性能监控工具识别导致页面加载缓慢的问题,从而改善数字体验。页面加载缓慢可能意味着会页面放弃和业务损失。APM 解决方案可以为此指标设置性能基准,然后在未达到基准时提醒您。