TiFlash 中有几个配置参数可以调整以帮助防止服务停机:
max-merge-region-size:该参数控制 TiFlash 在压缩过程中可以合并的区域的最大大小。 默认情况下,最大大小设置为 1GB。 如果 TiFlash 的 compaction 任务过载,可以增加这个参数,让 TiFlash 合并更大的 region,减少 compaction 任务的总数。
max-background-compactions:该参数控制 TiFlash 可以运行的最大并发后台压缩任务数。 默认情况下,最大任务数设置为 4。如果 TiFlash 有 compaction 任务过载,可以增加这个参数,让 TiFlash 运行更多的并发任务。
max-table-size:该参数控制单个 table 可以加载到 TiFlash 的最大大小。 默认情况下,最大大小设置为 512GB。 如果你正在加载大表到 TiFlash 中,遇到服务宕机的情况,可以减小这个参数来限制每张表的大小,减少对 TiFlash 的影响。
max-server-memory-usage:该参数控制 TiFlash 在每个节点上可以使用的最大内存量。 默认情况下,最大内存使用量设置为节点上总可用内存的 80%。 如果 TiFlash 内存不足,服务宕机,可以减小这个参数来限制 TiFlash 可以使用的内存量,防止节点不堪重负。
监控 TiFlash 的性能并根据需要调整这些参数以保持最佳性能并防止服务停机也很重要。 TiDB 提供了一系列监控和诊断工具,包括 TiDB Dashboard 和 TiUP,可以用来监控 TiFlash 集群的健康和性能,并根据需要进行配置调整。