本文介绍: 什么性能监控,以及性能监控对象哪些。伴随着突发流量系统变更或代码腐化等因素,性能退化随时会发生。如在周年庆大促期间由于访问量暴涨导致请求超时无法下单应用发布变更后,页面频繁卡顿导致客诉上升;线上系统运行一段时间后,突然发生OOM或连接打满拒绝访问。性能退化最直观的影响就是用户体验比如打开一个商品详情页面的耗时从0.5s上升至3s,那么用户继续浏览的意愿度就会大幅下降。当性能进一步退化超时阈值比如5s),就会导致无法正常提供服务影响服务可用性,进而带来巨额的业务损失口碑崩坏。

什么是性能监控,以及性能监控对象哪些

伴随着突发流量、系统变更或代码腐化等因素,性能退化随时会发生。如在周年庆大促期间由于访问量暴涨导致请求超时无法下单应用发布变更后,页面频繁卡顿导致客诉上升;线上系统运行一段时间后,突然发生OOM或连接打满拒绝访问。

性能退化最直观的影响就是用户体验比如打开一个商品详情页面的耗时从0.5s上升至3s,那么用户继续浏览的意愿度就会大幅下降。当性能进一步退化超时阈值(比如5s),就会导致无法正常提供服务影响服务可用性,进而带来巨额的业务损失口碑崩坏。因此,性能退化不仅会损害用户体验或服务可用性,还可能决定着业务的成与败。

防治性能退化的最佳实践是“预防为主、防治结合”。由于性能退化一旦发生,就会不可避免的影响用户体验业务数据,因此,应该可能架构设计代码编写测试验证阶段,提前完成性能优化,规避常见的性能问题。此外,在性能退化发生期间,能够及时识别性能风险快速定位性能瓶颈,及时修复解决

无论是提前预发,还是事后治理,都需要一套精准实时的性能监控体系,帮助业务团队准确、快速识别性能瓶颈点与影响面,针对性地采取下一步措施。越是复杂、庞大的IT系统,越需要建立完备、好用的性能监控体系,尽早介入,快速定位,降低危害。

性能监控是指在软件硬件或系统运行期间对其性能指标进行监测记录以便分析优化系统性能。通过收集分析性能数据可以识别系统瓶颈、优化资源分配提高系统可靠性稳定性等。性能监控通常包括对系统资源的监控,如CPU、内存磁盘网络等,以及对应用程序的监控,如响应时间吞吐量并发数等。

  1. 服务器:包括物理服务器虚拟服务器,监控服务器的CPU、内存磁盘网络资源使用情况。
  2. 操作系统:监控操作系统的运行状态进程、服务、文件系统等。
  3. 数据库:监控数据库连接数查询响应时间事务处理等。
  4. 应用程序:包括Web应用移动端App分布式微服务应用等,监控应用程序的响应时间吞吐量并发数等。
  5. 网络设备:包括路由器交换机防火墙等,监控其网络流量带宽延迟指标
  6. 云服务:包括云中间件、云数据库等,监控其资源使用情况、网络延迟等指标。
  1. 有1%的服务请求可能正在忍受一个超长的响应速度,而它影响到的用户是远大于1%的比例。因为一次终端用户请求会直接或间接的调用多个节点服务,只要任意一次变慢,就会拖慢整体终端体验。另外,一个用户可能执行多次操作,只要有一次操作变慢,就会影响整体产品体验。
  2. 耗时P99分位数是对应用性能瓶颈的提前预警。当P99分位数超出可用性阈值时,反映了系统服务能力已经达到了某种瓶颈,如果不加处理,当流量继续增长时,超时请求影响的用户比例将会不断扩大。虽然你现在处理的只是这1% 的慢请求,但实际上是提前优化了未来5%、10%,甚至更高比例的慢请求。
  3. 根据经验表明,往往是那些数据体量大,查询条件复杂的“高端”用户更容易触发查询。同时,这部分用户通常是影响产品营收和口碑的高价值用户,需要优先响应解决。
  • 当 load1、load5、load15 三个值非常接近,表明短期内系统负载比较平稳。此时,应该将其与昨天或上周同时段的历史负载进行比对,观察是否有显著上升。
  • load1 远小于 load5 或 load15 时,表明系统最近 1 分钟的负载在降低,而过去 5 分钟或 15 分钟的平均负载却很高。
  • load1 远大于 load5 或 load15 时,表明系统负载在急剧升高,如果不是临时抖动,而是持续升高,特别是当 load5 都已超过 0.7 * CPU 逻辑核数时,应调查原因,降低系统负载。
  • CPU 密集型应用,大量进程在等待或使用 CPU,此时 CPU 使用率与平均负载呈正相关状态
  • I/O 密集型应用,大量进程在等待 I/O,此时平均负载会升高,但 CPU 使用率不一定很高。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注