微服务系统的测量与可视化
1. 微服务测量问题与挑战
在微服务系统中,当系统性能下降时,逐个检查每个微服务的指标是非常繁琐的。因此,需要解决以下测量问题:
- 无需观察每个组件就能了解系统的健康状况。
- 理解系统的实际结构。
- 快速轻松地诊断和隔离故障。
- 预测问题可能出现的位置。
需要将系统状态总结为一组有用的测量指标。然而,时间序列图表存在问题,要么绘制所有服务的数据,导致图表杂乱难以解读,要么对数据进行统计汇总(使用均值或百分位数),但会丢失所关注的异常信息。
2. 散点图的强大之处
2.1 散点图原理
散点图是一种更适合微服务架构的可视化方式,它适用于分析大量元素之间的关系。散点图通过可视化的方式比较两个数量,对于一组事物(如服务器、消息或微服务),每个事物在图表中用一个点表示,每个事物有两个要比较的数值属性,分别对应 x 轴和 y 轴。例如,比较一组人的体重和身高,通常较高的人会更重,点会形成一个向右上方倾斜的形状,表明这两个数量是相关的。
2.2 用于微服务响应时间比较
对于时间序列数据,只有一个给定时间的测量值,难以直接用于散点图。可以使用历史时间段和当前时间段的汇总统计数据来定义两个数值。例如,使用过去 24 小时的响应时间作为历史数据,过去 10 分钟的响应时间作为当前数据。为了更关注大多数用户的体验,使用第 90 百分位数来汇总数据。如果有 100 个微服务,为每个微服务计算这些数值,然后绘制散点图。
如果一切正常,当前性能应与历史性能相似,响应时间应高度相关,在图表中形成一条明显的上升线。如果有异常点,
超级会员免费看
订阅专栏 解锁全文
34

被折叠的 条评论
为什么被折叠?



