XA协议:
为了解决分布式事务,各大厂家数据库都提供了xa协议接口。什么是XA协议,就是通过多阶段提交,确保数据一致性。以两阶段提交为例
第一阶段为准备阶段,事务管理器会给每个资源管理器发送Prepare消息。每个资源管理器要么返回失败,要么写本地事务,redo和undo日志写好,但是不提交。
第二阶段为提交阶段,如果事务管理器收到任何资源管理器的失败消息或者超时消息,会给每个资源管理器发送回滚消息。否则给每个资源管理器发送提交消息。
优点:1、有比较成熟的第三方框架,比如atomikos