CS-Notes 学习笔记
Java 后端 · 分布式与消息队列

2PC 有什么问题?

先自己想一想,再看参考要点

参考要点

  • 同步阻塞:参与者准备后一直持有锁,等待协调者的决定
  • 单点问题:协调者在提交阶段故障时,已同意的参与者既不能提交也不能回滚,只能等待
  • 数据不一致:协调者只发出部分 Commit 就崩溃
  • 太过保守:准备阶段任一参与者失败、回复中止或超时,整个事务都要回滚
  • 用数据库的 XA 实现时每个参与者都要支持 XA,Redis、Kafka、RocketMQ 和一般的 HTTP 接口无法直接参与
在学习站中自测这道题看这道题所在的一天

学习站:先用面试题自评定级,按水平和面试日期排出每天的计划,自评过的题按间隔复习。免费、无需注册,记录只保存在自己的浏览器中。