分布式事务
文章平均质量分 77
星月的雨
这个作者很懒,什么都没留下…
展开
-
Seata 分布式事务
初探下载官方代码:https://gitee.com/mirrors/Spring-Cloud-Alibaba.git目前的最新seata版本为1.4.根据MD,分别启动4个服务。主要业务有3项扣除商品库存 扣除用户金额 创建订单demo 中有feign,rest 两种服务掉用方式http://127.0.0.1:18081/seata/feignhttp://127.0.0.1:18081/seata/rest后台操作修改数据为: 库存 》 用户表》..原创 2021-01-06 17:21:34 · 224 阅读 · 1 评论 -
分布式事务常见解决方案
在电商领域互联网下,基于CP的强一致性方案在数据库性能和系统处理能力会出现一定瓶颈。所以互联网更多采用柔性事务,柔性事务是遵循BASE理论来实现事务模型,有两个特性:基本可用,柔性状态。TCC补偿型方案TCC(Try-Confirm-Cancel)是一种比较成熟的分布式数据一致性解决方案,它实际上是把一个完整的业务拆分为如下三个步骤。Try ∶ 这个阶段主要是对数据的校验或者资源的预留。 Confirm∶确认真正执行的任务,只操作Try阶段预留的资源。 Cancel∶取消执行,释放Try阶段原创 2021-01-04 16:14:40 · 333 阅读 · 3 评论 -
分布式事务原理
XA协议ACID特性:原子性(Atomicity)∶事务必须是原子工作单元,不可继续分割,要么全部成功,要么全部失败。 一致性(Consistengy)∶事务完成时,所有的数据都必须保持一致。 隔离性(Isolation)∶由并发事务所做的修改必须与任何其他并发事务所做的修改隔离。 持久性(Durability)∶事务执行完成之后,它对于系统的影响是永久性的。此特性是针对单库夺标事务所要满足的特性,在分布式事务下不能保证。X/OPEN 这个组织定义了一套分布式事务标准。这个标准提出了两阶原创 2021-01-04 15:19:48 · 303 阅读 · 0 评论 -
消息队列在微服务场景中的可靠性模式原理梳理
场景一:主业务服务发送消息时可能因为消息队列无法使用而失败主业务服务将要发送的消息持久化到本地数据库中,标记状态为“待发送”,然后把消息发送给消息队列 消息队列接收到消息后,把消息持久化到自己的存储服务中,这时不是立即发送消息到子服务,而是立即向主服务(生产者)返回消息队列的结果 主服务接收到消息的返回结果,判断是否成功,失败则结束后续业务处理,设置本地持久化记录状态为“结束”,否则执行后...原创 2019-11-19 16:41:29 · 259 阅读 · 0 评论