作者:不清不慎,目前在杭州蘑菇街公司任职,Java大数据开发工程师一枚,热爱研究开源技术! 架构师社区合伙人!
一、分布式事务
分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,要么全部失败。本质上来说,分布式事务就是为了保证不同数据库的数据一致性。
以商品流水账单为例,我们拆分为商品购买系统,订单系统,支付系统。
用户看中一件商品,点击购买。
商品购买系统响应用户的点击,向订单系统插入一条订单信息。
跳转到支付系统完成支付。
在用户整个购买商品的过程中,我们需要保证事件1,2,3在没有异常的情况下全部执行成功,一旦某个系统抛出异常,都需要回滚。
那么,如何保证各个子系统的操作具有一致性呢?这就是我们下面提到的分布式事务的解决方案。
在这里,文章中没