学习笔记-分布式事务理论

3 篇文章 0 订阅
2 篇文章 0 订阅

分布式事务

本地事务

  • A
    • 原子性
    • 所有事务操作,要么都完成,要么都不完成
  • C
    • 一致性
    • 事务执行前后,数据库一致性约束没被破坏
  • I
    • 隔离性
    • 两个事务互不干扰
  • D
    • 持久性
    • 事务完成后,数据更改会持久化到数据库,不会被回滚

分布式事务

  • 分布式事务
    • 不同服务通过网络远程协作完成的事务叫做分布式事务
  • 场景
    • 微服务
    • 单体访问多个数据库
    • 多个服务访问一个数据库

CAP理论

  • c

    • 一致性
  • a

    • 可用性
    • ca 不能共存
  • p

    • 分区容忍性
    • 必须
  • 组合

    • ap
      • 放弃一致性
    • cp
      • 放弃可用性
      • 转账
    • ca
      • 放弃分区

base理论

  • 强一致性和最终一致性
    • 基本可以
    • 软状态
    • 最终一致性

解决方案

2pc

  • 两阶段提交
  • 组成
    • 事务管理器
    • 参与者
  • 过程
    • 准备阶段
      • 事务管理器发送Prepare消息给参与者
      • 参与者本地执行事务,未提交
      • 本地记录Undo/Redo日志(修改前/修改后数据)
    • 提交阶段
      • 如果事务管理器接收到error或超时,回滚事务
XA方案
  • DTP模型
    • AP
      • 应用程序
    • RM
      • 资源管理器
    • TM
      • 事务管理器
    • XA
      • TM与RM直接的接口规范协议
seata方案
  • 开源分布式事务框架
  • 全局事务
  • 分支事务
  • 概念
    • RM
      • 控制分支事务
    • TM
      • 事务管理器
      • 嵌入应用程序
    • TC
      • 事务协调器
      • 独立运行
  • 流程
    • TM向TC申请开启全局事务,生成唯一XID
    • RM向TC注册分支事务,纳入XID的全局事务
    • 执行完毕,TM向TC发起堆XID的全局提交或回滚决议
    • TC调度XID的分支事务完成提交或回滚

TCC

  • TCC
    • Try
      • 预处理
    • confirm
      • 业务确认
    • cancel
      • 撤销
  • 框架
    • Hmily

可靠消息最终一致性

  • 可靠消息最终一致性
    • 本地事务与消息发送原子性
    • 事务参与方接收消息可靠性
    • 消息重复消费问题
  • 方案
    • 本地消息表方案
    • RocketMq事务消息方案

最大努力通知

  • RocketMq最大努力通知方案
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值