参考: http://www.cnblogs.com/zengkefu/p/5742617.html
事务消息+最终一致性。是一个不错的方案:
基于消息中间件的两阶段提交往往用在高并发场景下,将一个分布式事务拆成一个消息事务(A系统的本地操作+发消息)+B系统的本地操作,其中B系统的操作由消息驱动,只要消息事务成功,那么A操作一定成功,消息也一定发出来了,这时候B会收到消息去执行本地操作,如果本地操作失败,消息会重投,直到B操作成功,这样就变相地实现了A与B的分布式事务。
JTA原理与实现分析,参考:https://www.ibm.com/developerworks/cn/java/j-lo-jta/index.html