如何判断TiDB实例是否存在资源瓶颈?

分布式系统感觉瓶颈在网络

1 个赞

资源和查询方式关系密切,靠堆硬件不现实,优先优化占用资源高且不合理的操作再谈资源是否有瓶颈。

1 个赞

嗯, 分布式数据库 节点间的数据经常同步延迟

  1. tidb server CPU 尽量单实例 40vc 以内,利用率比较高。cpu 使用率 80% 以上可以考虑扩容实例了
  2. 磁盘还好,注意配置日志和 tmp 目录,满了一般也不影响服务
  3. 内存不要 开 swap,oom 就优化 SQL 即可。
1 个赞

有道理,Swap 会严重拖慢 SQL 执行速度,导致集群雪崩

常见瓶颈的优化方向

瓶颈类型 优化措施
TiDB CPU 瓶颈 1. 优化慢 SQL(加索引、拆分大事务)2. 扩容 TiDB 节点3. 降低 tidb_executor_concurrency 减少 CPU 竞争
TiKV IO 瓶颈 1. 迁移热点表,分散 IO 压力2. 更换更高性能的 SSD3. 调大 block_cache 比例,提升缓存命中率
TiKV 内存瓶颈 1. 扩容 TiKV 节点内存2. 调大 block_cache 配置(storage.block-cache.capacity)3. 限制大查询的内存使用
PD 调度瓶颈 1. 减少频繁 DDL 操作2. 调整 PD 调度参数(降低 max-snapshot-count 减少同步压力)

网络瓶颈呢?

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