随笔分类 -  事务

事务 本地事务 分布式事务 分布式事务框架
摘要:一 各种方案对比 | | 2PC | TCC | 可靠消息最终一致性 | 最大努力交付 | | | | | | | | 一致性 | 强一致性 | 最终一致(偏强) | 最终一致 | 最终一致 | | 吞吐量 | 低 | 中 | 高 | 高 | | 实现复杂的 | 易 | 难 | 中 | 易 | 二 阅读全文
posted @ 2020-03-06 04:11 NEWHOM 阅读(218) 评论(0) 推荐(0)
摘要:一 什么是最大努力交付 事务发起方服务执行完本地事务后向消息中间件发送一条消息,消息中间件发送消息给通知服务,通知服务发送消息给下游系统或者服务。 二 使用最大努力交付的前提 同使用可靠消息最终一致性的前提一样: 下游服务执行本地事务失败不会对上游服务造成影响。事务不要求强一致性 三 最大努力交付与 阅读全文
posted @ 2020-03-06 04:10 NEWHOM 阅读(411) 评论(0) 推荐(1)
摘要:一 什么是可靠消息最终一致性 事务发起方服务执行完本地事务后向消息中间件发送一条消息,消息中间件通知下游服务执行本地事务。 二 使用可靠消息最终一致性的前提 下游服务执行本地事务失败不会对上游服务造成影响。事务不要求强一致 三 使用可靠消息最终一致性必须要解决的问题 上游服务的本地事务与发送消息的原 阅读全文
posted @ 2020-03-06 04:09 NEWHOM 阅读(303) 评论(0) 推荐(0)
摘要:一 什么是TCC TCC将每个分支事务都分成三个部分(Try、Confirm、Cancel): Try:业务检查及资源预留。 Confirm:真正执行业务,不做任何业务检查。使用Try阶段预留的资源。 Cancel:实现回滚操作,释放资源。 二 TCC实现分布式事务的流程 1. 第一阶段:全局事务管 阅读全文
posted @ 2020-03-04 03:05 NEWHOM 阅读(350) 评论(0) 推荐(1)
摘要:一 什么三阶段提交协议(3PC) 3PC是2PC的改进版本。主要有以下改进: 增加了一个询问阶段,询问阶段可以确保尽可能早的发现无法执行操作而需要中止的行为,但是它并不能发现所有的这种行为,只会减少这种情况的发生。 增加了等待超时的处理逻辑,如果在询问阶段等待超时,则自动中止;如果在准备阶段之后等待 阅读全文
posted @ 2020-03-04 03:04 NEWHOM 阅读(390) 评论(0) 推荐(1)
摘要:一 什么是2PC 2PC即两阶段提交协议,将整个全局事务分为准备阶段,提交阶段。 1. 准备阶段(Prepare Phase):事务管理器给每个本地事务发送Prepare消息,每个本地事务执行本地事务,但不提交。并且写本地的Undo/Redo日志。并且继续持有锁资源。 Undo:记录数据库修改前的数 阅读全文
posted @ 2020-03-03 02:55 NEWHOM 阅读(725) 评论(0) 推荐(1)
摘要:一 什么是分布式事务 在分布式系统环境下,不同服务之间由网络协作完成事务叫做分布式事务。 二 分布式事务产生场景 1. 不同服务访问不同数据库实例 2. 相同服务访问不同数据库实例 3. 不同服务访问相同数据库实例 三 分布式储存系统基础理论 CAP 一致性(Consistency):保证同一时刻, 阅读全文
posted @ 2020-03-03 02:54 NEWHOM 阅读(286) 评论(0) 推荐(0)
摘要:一 什么是事务 二 事务的四大特性 三 什么是本地事务 四 隔离级别 不可重复读与幻读的区别: 不可重复读前后读取的数据内容不一致,幻读前后读取的数据量不一致。 解决读的问题:在数据库层面设置事务隔离级别 | 隔离级别 | 脏读 | 不可重复的 | 幻读(虚读) | | | | | | | 读未提交 阅读全文
posted @ 2020-03-03 02:52 NEWHOM 阅读(361) 评论(0) 推荐(0)