如何搭建系统拓扑图(借助perf埋点数据)

2023-11-23  本文已影响0人  小胖学编程

背景

产出系统拓扑图,改图中可以展示出系统全貌,如下图所示

设计原理.png

思路

系统拓扑图本质上是一个“图”,所以需要定义node节点以及edge边缘,使其成为一个“图”,同时node和edge的信息,可以去perf埋点的存储中获取。

给出一下定义node以及edge的数据结构

{
"node":[
  {
    "id":"服务节点名",
    "service":"可选-服务名",
    "label":"",
    "owner":"",
    "type":"类型"
 }
],
"edges":[
  {
     "id":0,
     "source":"sourceId",
     "target":"targetId"
  }
]
}

但是需要注意的是,rpc接口中可能会存在一台机器上存在多个service服务。而我们求的调用关系是api->service中。我们实际上关注的是调用某个service,而不是该机器上所有的服务。

上一篇 下一篇

猜你喜欢

热点阅读