Skip to content
困难

一句话答案

强一致用 2PC/XA(性能差),最终一致用事务消息/TCC/SAGA/本地消息表,根据业务场景权衡一致性和性能。

核心要点
方案一致性性能侵入性
2PC/XA
TCC最终
SAGA最终
消息表最终
事务消息最终低(推荐)
追问与易错

追问方向:

  • 最终一致能接受多久延迟?
  • 怎么选强一致还是最终一致?
  • 对账机制怎么设计?

易错点:

  • ❌ 分布式一定不能强一致——小范围可以
  • ❌ 最终一致就是慢慢一致——需有明确补偿机制

💡 记忆锚点

一致性光谱:左端强一致(2PC/XA,像银行柜台当面转账,慢但绝对准确),右端最终一致(事务消息/TCC/SAGA,像银行转账到账有延迟但最终正确)。大部分业务站右边就够,只有资金类核心数据才需要站左边,别忘了最终兜底都靠对账。