【pd源码问题】请问下怎么确认pd里面的http接口/GRPC接口分别是tikv还是client-go请求的?

请问下大佬们,最近在看pd的源码,对于pd中的http接口/GRPC接口能不能快速了解下,是tikv节点在调还是client-go在调?

没有研究过这个

  • HTTP 接口:主要由 TiDB 通过 HTTP 调用 PD 接口。
  • gRPC 接口:主要由 TiKV 节点直接调用 PD 的 gRPC 接口。
1 个赞

我还在看视频

TiKV 和 client-go 是 GRPC 接口的主要调用方,而 HTTP 接口几乎只有运维 / 监控相关方调用

两者都在调,但职责完全不同HTTP 接口 Client-go (Operator/运维)、浏览器,gRPC 接口
TiKV 节点TiDB Server

1 个赞

俺还在看视频,不过你找到答案了吗

PD的HTTP接口多为运维/监控调用,gRPC接口主要由TiKV、client-go及TiDB Server调用,二者职责不同。

gRPC用什么协议?

我还在查找怎么搞定

楼主的解决方案很巧妙,解决了我的一个疑惑。

还没学的这么深入,还再学习中!

PD 同时提供 HTTP 和 gRPC 接口,其中 HTTP 用于运维/监控(如 pd-ctl、TiDB Dashboard、Prometheus 抓取),gRPC 用于集群内部组件通信(TiKV 和 PD 之间);client-go 通常不直接调用 PD 接口,而是通过 TiDB server 或 etcd 兼容接口间接交互。‌

gRPC 接口的主要访问方是 TiKV 与 client-go 组件,HTTP 接口的使用场景局限在运维管控、指标监控范畴。

gRPC(默认 2379):TiKV、TiDB 主动调用 PD(最核心)
HTTP(2379/PD 管控接口):运维 / 客户端 /ctl/ 监控调用,TiKV 不用 HTTP

学习了

豁然开朗

学习了太深入了,跟着大佬一起TIDB