标签:自己的 自己 分布式 资源 事务管理 改进 ack tac 返回
1PC,one phase commit,一阶段提交
这个就是普通的事务了,只涉及到单个数据源
应用直接与数据源通信,先begin一个事务,然后要么commit,要么rollback
2PC,two phase commit,二阶段提交
用于解决分布式事务,涉及到多个数据源的事务
需要有TM(Transaction Managers,事务管理器,直接与应用通信)与RM(Resource Manager,资源管理器,也就是各个数据源)共同参与
第一阶段:TM要求各个相关的RM准备好相关的资源(各个RM都开启了1PC事务,并处于只差COMMIT/ROLLBACK的状态),RM向TM返回自己的状态:成功/失败
第二阶段:TM收到各个RM的反馈,如果全部成功,说明事务可以被正确执行,于是向所有RM发送COMMIT命令;如果有RM失败,则向所有RM发送ROLLBACK命令,将整个事务回滚
存在的问题:
3PC,three phase commit,三阶段提交
对2PC的改进
参考资料
real-difference-between-one-phase-and-two-phase-xa-commit
标签:自己的 自己 分布式 资源 事务管理 改进 ack tac 返回
原文地址:http://www.cnblogs.com/stevenczp/p/6270395.html