数据库的分布式事务

通常,我们只需要对一个数据库进行操作,那么这样的事务是很简单的。然而,随着商业需求的日益增加,应用程序变得越来越复杂,经常需要操作多个数据库,这些数据库通常分布在多台机器上,这就是分布式事务。

为了保证分布式事务的原子性,我们要采用两阶段提交。两阶段提交是通过Microsoft分布式事务协调器(MS DTC)来协调的。

为了能用两阶段提交协议进行协调,事务中的每个数据源必须装有MS DTC。事务的起源出的MS DTC是主要的协调器,被称作提交协调器,提交协调器负责事务的提交或回滚。

两阶段提交到底是哪两个阶段呢?

  1. 准备阶段
  2. 提交阶段

下面通过图解来认识两阶段提交

准备阶段

每个服务器接收到事务的指令,但是先把要写入磁盘的内容缓冲起来

每个服务器通知提交协调器关于事务的执行状况

提交阶段

如果提交协调器接收到来自每个数据源的“准备提交”的信息,就提交事务

然而,如果从某一受影响的数据源接收到失败信息,提交协调器将执行回滚,并且通知客户应用程序



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值