TiDB 读写分离如何配置,如何验证分流效果?

业务希望实现读写分离分担节点压力,请问 TiDB 读写分离的配置方式,以及怎样确认读写请求已正常分流?

1 个赞

在 TiDB 中实现读写分离,核心是设置 tidb_replica_read 变量。

配置方式 :

sql

– 会话级:所有读请求走 Follower SET SESSION tidb_replica_read = ‘follower’; – 全局级 SET GLOBAL tidb_replica_read = ‘follower’;

常用选项:leader (默认)、follower (强制只读副本)、leader-and-follower (轮询)、closest-replicas (就近读)。

确认分流 :

  1. 看监控 :Grafana → TiKV-Details → 观察各 TiKV 节点的 CPU/QPS 分布,预期 Follower 节点的读负载上升。
  2. 看慢查询 :慢查询日志中记录的执行计划,可推断读取副本类型。
  3. 对比延迟:分别用 leaderfollower 模式执行相同查询,若延迟差异明显则说明分流生效。

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。