SoCC21-Alibaba-Characterizing Microservice Dependency andPerformance: Alibaba Trace Analysis

总结

  • 比较微服务和传统并行任务的区别
  • 从调用图、依赖、运行时性能角度进行分析,同时对动态调用图进行建模
  • 有用的点:
    • 调用图 - 重尾分布
    • 内存CPU影响 - CPU影响更大 - CPU占用越高,RT越高

1. Intro

  • 微服务和传统并行任务调用图不同

    • 重尾分布:10%的调用图有40个以上的微服务
    • 热点
    • 高度动态
  • 有些服务见有强依赖性 UM-DM

  • CPU限制更大

    • 同时RT可以用于拓扑cluster

2. Alibaba trace介绍

  • 通信中,ROC 76%, MQ 23%, IP(进程内通信) 1%

3. 调用图分析

  • 特点

    • 重尾分布

      • 导致传统机器学习来做资源分配是困难的
    • 调用链中,大多数层只包含一个微服务

    • 微服务调用图是高度动态的

      • 聚类结果:一个微服务的调用链中,会有多个类别的调用图/聚类
  • 提出了一个图分类算法

  • 分析

    • MQ能更少得较少RT

4. 依赖

  • 讲了死锁/回环依赖

    • 但感觉实际上回环依赖比较少

5. 微服务运行时性能

  • MCR:

    • Microservice call rate (MCR) 一个微服务每分钟被调用的次数

    • MCR和CPU利用率以及Young GC高度相关,和内存利用率关系不大

      • 只能说明调用高了,CPU利用率就高。
  • 微服务RT性能

    • CPU占用越高,RT性能越差

6. 动态调用图建模

7. 相关工作

  • 有人用系统排队作为指标:网卡、线程、socket,但数据难以获得

SoCC21-Alibaba-Characterizing Microservice Dependency andPerformance: Alibaba Trace Analysis

https://www.fireknight.tech/2023/01/12/SoCC21-Alibaba-Characterizing-Microservice-Dependency-andPerformance-Alibaba-Trace-Analysis/

作者

FireKnight

发布于

2023-01-12

更新于

2023-01-12

许可协议

评论