You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于Galera集群TOI模式及写阻塞机制的技术疑问

Galera集群Total Order Isolation (TOI)模式核心问题解答

1. 多库场景下TOI的写阻塞范围

在TOI模式下,当某节点的「数据库A」执行DDL触发TOI事件时,整个节点的所有写操作都会被阻塞,包括「数据库B」的写请求。TOI的锁机制是节点级别的——DDL执行期间,节点会进入全局“隔离”状态,暂停处理所有写入事务(无论归属哪个数据库),直到DDL的write-set在集群内完成全序同步并在所有节点应用完毕。你通过进程列表观察到的服务器级别阻塞是符合实际行为的,这是TOI保证DDL原子性和集群数据一致性的核心逻辑。

2. Galera集群Write-sets的管理方式

  • Write-sets由每个节点独立管理,并非按数据库级别划分。每个节点会为自身处理的所有跨库事务生成对应的write-set,再通过组通信协议(GCS)同步至集群内其他节点。
  • 每个节点维护专属的write-set日志和冲突检测逻辑,收到其他节点的write-set后,会在本地基于行级快照隔离完成冲突检查,通过后再按照全局统一顺序应用到本地数据库实例。

3. 官方文档的相关说明

Galera官方文档明确指出TOI的阻塞是节点级别的,核心描述如下:

TOI模式下,DDL操作会触发全局节点级锁,暂停节点上的所有写入操作,直到DDL在集群所有节点完成应用。这一机制用于保证DDL操作的原子性,确保所有节点的schema状态保持一致。

你可以在官方文档的「DDL Handling」章节找到该模式的详细说明,重点关注Total Order Isolation部分的内容。

内容的提问来源于stack exchange,提问作者samsamsamsmasma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 06:10:59