随笔 - 934, 文章 - 0, 评论 - 249, 阅读 - 345万

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

分布式系统监控的四类黄金指标

Posted on   蝈蝈俊  阅读(940)  评论(0编辑  收藏  举报

按照《SRE:Google运维解密》中描述的, 分布式系统监控的四类黄金指标是:延迟(Latency)、流量(Traffic)、错误(Errors)、饱和度(Saturation)。

从下图可以看到,对每一个系统来说,这四类监控指标覆盖了:输入、输出、和系统自身。

指标监控项

在不同场景下,每类指标都有不同的监控项:

监控关注点和策略

这些监控项都需要时序指标异常检测技术,除此之外,它们还有自己的特征:

1、 流量类

流量类主要关注点在:

  • 异常流量:突增或突降、同比环比不一致。
  • 历史峰值,以及基于历史流量预测未来流量。

主要的技术难点在异常点的干扰,相关解决策略可以参看: 百度是如何做智能流量异常检测

  • 基于鲁棒回归的预测算法,可以不受异常点的影响,精准地预测流量水位值;
  • 基于泊松分布的检测算法,可以从概率的角度对流量建模,能够使用简单的恒定阈值来精准地检测流量异常;

2、 错误类

常态错误是不可取的,这部分要么应该归入某种业务状态,要么就要分析解决。

  • 可归入业务状态的,需要看某种状态的走势,就回到流量类的异常走势分析了。
  • 错误类的,要分析发生的原因,并看如何避免问题发生。

错误率突升或者成功率突降代表系统自身的处理逻辑可能存在问题,这类指标的异常检测利用了二项式分布,以解决正常和异常的边界区分问题。参看:《还记得概率课本中的二项分布吗?在我们的网络判障中发挥了大作用!》

3、 延迟类

  • 服务接口有超时等待、超时重试相关设置,这部分的时间是底线时间。
  • 由于 吞吐量 = 流量 * 平均耗时 ,一旦耗时增大,服务的处理能力会下降,如果正好是高峰期,有扛不住的隐患。

基于上面两条认知,延迟类我们要看:

  • 平均耗时,用于吞吐量的评估。
  • 基于业务特征,关注用户体验,看 TP95,TP99,TP999 ... 耗时。

对于耗时大于一定阈值的(尤其是高峰期时),要做分析和解决,比如典型的数据库慢查询。

4、 饱和度类

负荷程度如何?由最短板所决定。比如:在内存受限的系统中,即为内存;在I/O受限的系统中,即为I/O。

很多系统在达到100% 利用率之前性能会严重下降,所以合理的利用率目标也是很重要的。

相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
历史上的今天:
2021-12-02 优秀的架构师应该在广度、高度、深度、宽度方面都很突出
点击右上角即可分享
微信分享提示