当前位置:网站首页>学习笔记-分布式事务理论
学习笔记-分布式事务理论
2022-07-24 06:55:00 【weixin0605】
分布式事务
本地事务
- A
- 原子性
- 所有事务操作,要么都完成,要么都不完成
- C
- 一致性
- 事务执行前后,数据库一致性约束没被破坏
- I
- 隔离性
- 两个事务互不干扰
- D
- 持久性
- 事务完成后,数据更改会持久化到数据库,不会被回滚
分布式事务
- 分布式事务
- 不同服务通过网络远程协作完成的事务叫做分布式事务
- 场景
- 微服务
- 单体访问多个数据库
- 多个服务访问一个数据库
CAP理论
c
- 一致性
a
- 可用性
- ca 不能共存
p
- 分区容忍性
- 必须
组合
- ap
- 放弃一致性
- cp
- 放弃可用性
- 转账
- ca
- 放弃分区
- ap
base理论
- 强一致性和最终一致性
- 基本可以
- 软状态
- 最终一致性
解决方案
2pc
- 两阶段提交
- 组成
- 事务管理器
- 参与者
- 过程
- 准备阶段
- 事务管理器发送Prepare消息给参与者
- 参与者本地执行事务,未提交
- 本地记录Undo/Redo日志(修改前/修改后数据)
- 提交阶段
- 如果事务管理器接收到error或超时,回滚事务
- 准备阶段
XA方案
- DTP模型
- AP
- 应用程序
- RM
- 资源管理器
- TM
- 事务管理器
- XA
- TM与RM直接的接口规范协议
- AP
seata方案
- 开源分布式事务框架
- 全局事务
- 分支事务
- 概念
- RM
- 控制分支事务
- TM
- 事务管理器
- 嵌入应用程序
- TC
- 事务协调器
- 独立运行
- RM
- 流程
- TM向TC申请开启全局事务,生成唯一XID
- RM向TC注册分支事务,纳入XID的全局事务
- 执行完毕,TM向TC发起堆XID的全局提交或回滚决议
- TC调度XID的分支事务完成提交或回滚
TCC
- TCC
- Try
- 预处理
- confirm
- 业务确认
- cancel
- 撤销
- Try
- 框架
- Hmily
可靠消息最终一致性
- 可靠消息最终一致性
- 本地事务与消息发送原子性
- 事务参与方接收消息可靠性
- 消息重复消费问题
- 方案
- 本地消息表方案
- RocketMq事务消息方案
最大努力通知
- RocketMq最大努力通知方案
边栏推荐
- Redis 哨兵机制
- C language from entry to soil (III)
- tensorflow boolean_ Mask function
- avaScript的流程控制语句
- Unity中使用深度和法线纹理
- File “manage.py“, line 14 ) from exc ^ SyntaxError: invalid syntax出错的原因及解决方法
- 【方向盘】超爱的IDEA提效神器Save Actions,卸载了
- 开发系统选择路线
- You don't have to waste your life on others' standards
- 【C语言入门】ZZULIOJ 1011-1015
猜你喜欢

一个怎样的模式能让平台用户发生自助裂变?-链动2+1

一日一书:机器学习及实践——从零开始通往kaggle竞赛之路

Penetration learning - SQL injection - shooting range - installation and bypass experiment of safety dog (it will be updated later)

周杰伦直播超654万人观看,总互动量破4.5亿,助力快手再破纪录

Redis 主从机制

Redis persistence

上传excel文件

FPGA实现AXI4总线的读写

Practice of online problem feedback module (12): realize image deletion function

In the era of e-commerce, what should enterprises do in the transformation of social e-commerce?
随机推荐
处理树形结构数据
Filter 过滤器
C language start
Camera Hal OEM module ---- CMR_ grab.c
Never lose yourself!
Don't care too much about others' eyes, it will erase your glory
One book a day: machine learning and practice -- the road to the kaggle competition from scratch
第二部分—C语言提高篇_4. 二级指针
(note sorting is not completed) [graph theory: find the shortest path of single source]
Redis persistence
安全工具之hackingtool
Redis sentinel mechanism
电子商务时代,企业社交电商转型要做什么?
C process running permission
JMeter notes 2 | JMeter principle and test plan elements
【Tips】创建版本控制项目的简单方法
Use dichotomy to find specific values from the array
记账APP:小哈记账1——欢迎页的制作
C语言中extern,static, register,volatile 关键字的作用;保姆级教学!
变量和数据类型(04)完结