微服务架构分布式事务方案

微服务架构下分布式事务解决方案——阿里云GTS 1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源社区等都开始了微服务的讨论和实践。Hailo有160个不同服务构成,NetFlix有大约600个服务。国内方面,阿里巴巴、腾讯、360、京东、58同城等很多互联网公司都进行了微服务化实践。当前微服务的开发框架也非常多,... 阅读详情

第一节:了解常用的分布式解决方案

一、分布式事务方案:最终一致性、事务补偿、TCC、两阶段提交、最大能力通知等。具体结合业务场景。很多大型企业自主研发了自己的分布式事务解决方案,如:支付宝 XTS,去哪儿 QMQ。

1.基于可靠消息的最终一致性解决方案(异步确保型)(适用场景比较广)

2.TCC事务补偿性方案(try-confirm-cancel)(也属于两阶段型的,但区别于2PC协议的两阶段提交)

3.最大努力通知型方案(一般跨平台通知比较常用)

第二节:解决方案效果展示(结合支付系统真实应用场景)

13467292-39acfe51e85aa65a
13467292-ac65984a28f92d09

一.场景(如上图)

1、基于可靠消息最终一致性方案

场景:对应支付系统会计异步记账业务;银行通知结果信息存储与驱动订单处理。

2、TCC方案

场景:对应支付系统的订单账户操作:订单处理、资金账户处理、积分账户处理。

3、最大努力通知型方案

场景:对应支付系统的商户通知业务场景

二、用到的技术:

dubbo、spring、springMVC、mybatis、druid

jdk7(或jdk8)、mysql5.6、tomcat、兼容JMS标准的MQ(activeMQ)

第三节:常用分布式事务方案介绍

一、事务介绍

1.由一组操作构成的可靠、独立的工作单元。

2.ACID: atomicity(原子性) 、consistency(一致性)、isolation(隔离性)、durability(持久性)

3.难点:高度并发、资源分布、大时间跨度

二、本地事务

1.事务由资源管理器本地管理(如:spring 注解)

2.优点:支持严格的ACID属性、可靠、高效、状态可以只在资源管理器中维护、应用编程模型简单(在框架或平台的支持)

3.局限:不支持分布式事务处理能力、隔离的最小单位由资源管理器决定(如:数据库中的一条记录)

三、全局事务(DTP模型)--标准分布式事务

13467292-6dafc9b3b1d0c0c3
13467292-39451aa8906a43bb

四、javaEE平台中的分布式事务实现

13467292-79d88dd6f8d2ce51

五、柔性事务

13467292-0593a4406b49ac88

1.柔性事务中的服务模式:可查询模式、幂等操作、TCC操作、可补偿操作。

13467292-efaff82d5687a486

2.柔性事务解决方案:可靠消息最终一致

13467292-12dc1b7aa5514fce
13467292-d331cdb1eb2efd8f

3.TCC

13467292-cb166235c835557c
13467292-7c3889941122530d

4.最大努力通知型

13467292-8b49b9fc6340e95a

六、总结

常用的分布式事务解决方案:

*刚性事务:全局事务(标准的分布式事务)

*柔性事务:

可靠消息最终一致(异步确认型)

TCC(两阶段型、补偿型)

最大努力通知型(非可靠消息、定期校对)

本文就分享到这里了,最后送福利了,现在加群即可获取 群号:923116658 里面有Java工程化 、高性能及分布式、高性能、高架构、性能调优、Spring、MyBatis、 Netty源码分析等多个知识点高级进阶干货的相关视频资料,还有spring和 虚拟机等书籍扫描版,还有更多面试题等你来拿。

微服务架构下的数据一致性:分布式事务解决方案详解 分布式事务是指事务的参与者、支持事务的服务器、资源管理器以及事务管理器分别位于不同的分布式系统节点上。简单来说,就是一次操作由多个分布在不同服务或系统的子事务组成,这些子事务要么全部成功提交,要么全部失败回滚。跨多个服务或数据源:分布式事务涉及多个独立的服务或数据库,数据分散在不同的物理节点上。执行周期长:相比本地事务,分布式事务通常持续时间更长,因为涉及网络通信和多个系统的协调。复杂的故障处理:需要处理各种分布式场景下的故障,如网络分区、节点崩溃等。数据一致性与可用性的权衡。 阅读详情

相关推荐

SpringCloud微服务架构中分布式事务解决方案,讲烂了

说明 Java生鲜电商平台中由于采用了微服务架构进行业务的处理,买家,卖家,配送,销售,供应商等进行服务化,但是不可避免存在分布式事务的问题。 业界有很多的解决方案,对此我相信大家都百度一下子就有很多,但是我巨人大哥想说的是:微服务架构中应当尽量避免分布式事务。 下面就是来讨论下,分布式事务中主要聚焦于强一致性和最终一致性的解决方案。 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行

QAQFyl的博客 605

微服务分布式事务处理

你好,我是俞凡,在Motorola做过研发,现在在Mavenir做技术工作,对通信、网络、后端架构、云原生、DevOps、CICD、区块链、AI等技术始终保持着浓厚的兴趣,平时喜欢阅读、思考,相信持续学习、终身成长,欢迎一起交流学习。这意味着在上面的示例中,客户端可以看到已创建的订单,但在下一秒中,由于补偿事务,订单会被删除。没什么事情是完美的,两阶段提交与单个微服务的处理时间比起来慢很多,并且高度依赖于事务协调器,在高负载期间,事务协调器确实会降低系统的速度。

残星说梦话 1998

行人重识别技术(Re-ID)概述、研究现状以及相关数据集下载

ReID技术概述什么是ReID一般流程Re-ID特点研究现状难点数据集reid常用数据集以及下载链接评价指标实现思路研究方式基于表征学习基于度量学习基于局部特征全局特征切片姿态基于视频序列RQEN基于GANCamStyleDG-NetGAN总结对比未来方向建议文献 什么是ReID 行人重识别是指利用计算机视觉技术,判断在不同时间段、不同监控下出现的行人图像是否属于同一人员的技术。行人重识别是最近几年在视频分析领域下热门的研究领域,可以看做是人脸识别应用的拓展。现在大街上的监控较多,由于设备质量、成像光线、.

留缘的博客 1万+

微服务架构中怎么解决分布式事务

在微服务架构中解决分布式事务的常见方法有: 使用TCC(Try-Confirm-Cancel)模型:TCC模型通过在事务发起方和接收方之间分别执行try、confirm、cancel操作来管理分布式事务。 使用XA协议:XA协议是一种为分布式事务管理提供的标准协议,它可以在多个数据源之间协调事务的提交和回滚操作。 使用事务代理:在事务发起方和接收方之间使用事务代理进行协调,在事务失败时回滚整...

weixin_35752645的博客 339

双三相电机控制避坑指南:为什么你的SVPWM谐波大?四矢量调制实战解析

本文深入解析双三相电机控制中SVPWM谐波大的问题,并提供四矢量调制实战方案。通过分析谐波来源、四矢量调制原理及工程实现步骤,显著降低电流THD至3-5%,提升系统效率2.3个百分点。特别适合需要优化电机控制的工程师参考。

weixin_30645617的博客 397

通达信股本变迁文件(gbbq)解密方法

近年来A股市场跌宕起伏真特么精彩,本人愚钝,被整爆仓,损失惨重 痛定思痛,认为交易这种对纪律要求极高,且必须完全排除情绪影响的勾当,还是应该交给程序来干 数据哪里来呢?当然是拿来主义。。。问券商的交易软件要呗 到处查资料,得知通达信的权息文件数据齐全,不仅含有除权除息数据,还含有限售解禁、增发、可转债上市等股本变化数据 ——这对于某些对成交量变化敏感的交易模型是非常重要的

不甘碌碌老,结庐铸宝刀 2万+

【微服务之分布式事务】分布式事务

分布式事务

qq_35789269的博客 757

从Delta Delay到Timing Window:详解数字芯片后端时序差异的那些坑

本文深入剖析了数字芯片后端设计中,模块级与系统级时序分析结果不一致的核心原因。重点解释了Delta Delay如何导致模块级分析的乐观假设,以及Timing Window(时序窗口)差异如何通过影响串扰噪声计算,在顶层集成时引发新的时序违例,尤其是保持时间问题。文章为工程师提供了从约束建模到签核策略的系统性应对方案。

beer8的博客 498

Java微服务下的分布式事务介绍及其解决方案

1.由于最近在学习springcloud的项目,现在互联网下,分布式,微服务横行,难免会遇到分布式下的事务问题,这是一个难点,也是面试经常问的,别面试官一看你简历,都是微服务项目,问你了解啥是分布式事务不,你来句没有,这就很尴尬了,当然微服务下可能没有分布式事务,但是很多场景是需要分布式事务的,下面我就来介绍下什么是分布式事务,和分布式事务的解决方案部署在不同结点上的系统通过网络交互来完成协同工作的系统比如:充值加积分的业务,用户在充值系统向自己的账户充钱,在积分系统中自己积分相应的增加。

m0_74823292的博客 314

Zephyr RTOS线程间通讯实战:消息队列与信号量的5个经典应用场景

本文深入探讨了Zephyr RTOS中线程间通讯的核心机制,通过消息队列与信号量的组合,详细解析了传感器数据处理流水线、命令分发系统、日志记录、资源池管理以及周期性任务协同调度等5个经典应用场景。这些实战模式为构建高效、稳定且可维护的嵌入式多线程系统提供了清晰的设计蓝图和代码范例。

tomato的博客 94

S7-200 SMART PLC 子程序功能块(阀门控制)

由于S7-200 SMARTPLC的子程序种种功能、容量限制,有时想实现多次调用的子程序可能并不是太容易,这篇博客还是给出一些推荐写法,供大家参看。

RXXW_Dor的博客 8067

Java 分布式事务在微服务架构中应用理论

在微服务架构中,分布式事务是一个常见的挑战。由于微服务的拆分和分布式部署,跨多个服务的事务操作变得更加复杂。本文将探讨分布式事务的概念、在微服务领域的应用场景以及解决方案。分布式事务是指涉及多个独立服务或系统的事务操作,这些服务或系统可以位于不同的物理节点上。在一个分布式事务中,要么所有的操作都成功执行,要么所有的操作都回滚,以保证数据的一致性和可靠性。分布式事务在微服务架构中是一个具有挑战性的问题,但也有多种工具和解决方案可供选择。

Ak 的博客 732

PCL 点云八叉树射线相交

PCL 点云八叉树射线相交

dayuhaitang1的博客 850

微服务架构的分布式事务解决方案

微服务架构的分布式事务解决方案

kodmoqn的博客 83

Orin+ GMSL (Ser 9295+Des 9296)流程分析(1)

orin gmsl

乐于分享 2655

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

微服务架构的分布式事务解决方案-龙果学院

微服务架构的分布式事务解决方案-龙果学院

weixin_34220963的博客 706

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

微服务架构下分布式事务解决方案

前言在微服务架构中,随着服务的逐步拆分,数据库私有已经成为共识,这也导致所面临的分布式事务问题成为微服务落地过程中一个非常难以逾越的障碍,但是目前尚没有一个完整通用的解决方案。其实不仅仅是...

天行健,君子以自强不息;地势坤,君子以厚德载物。 1142

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

微服务架构下的分布式事务解决方案

微服务架构下的分布式事务解决方案 基础概念 事务         事务是指作为单个逻辑工作单元执行的一系列操作,要么完全(全部)的执行,要么完全的失败。简单的说,事务就是并发控制的单位,是用户定义的一个操作序列。 本地事务         ...

东哥_Jeffery的博客 827

微服务架构下分布式事务方案

1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源社区等都开始了微服务的讨论和实践。Hailo有160个不同服务构成,NetFlix有大约600个服务。国内方面,阿里巴巴、腾讯、360、京东、58同城等很多互联网公司都进行了微服务化实践。当前微服务的开发框架也非常多,...

唐僧洗发用飘柔 342

微服务架构中分布式事务实现方案

SAGA模型把一个分布式事务拆分为多个本地事务,每个本地事务都有相应的执行模块和补偿模块,当事务中任意一个本地事务出错时,可以通过调用对应的补偿方法恢复之前的事务,从而达到数据的最终的一致性。数据库和业务模块的垂直拆分为我们带来了系统性能、稳定性和开发效率的提升的同时也引入了一些更复杂的问题,例如在数据一致性问题上,我们不再能够依赖数据库的本地事务,对于一系列的跨库写入操作,如何保证其原子性,是微服务架构下不得不面对的问题。最后,在设计系统时我们一定要结合业务自身的一致性需求,选择恰当的方案。

MrLee的博客 840

微服务架构下的分布式事务终极解决方案

本文系统探讨了微服务架构下的分布式事务处理方案。首先分析了CAP理论带来的核心挑战,比较了传统2PC/3PC方案的优缺点。重点介绍了现代解决方案:Saga模式通过本地事务+补偿机制实现最终一致性;TCC模式采用Try-Confirm-Cancel三阶段操作;消息队列+本地消息表实现异步处理。详细解析了Seata框架的AT模式实现和集群部署,并探讨了事件驱动架构下的最终一致性方案。通过电商订单系统案例展示了分布式事务的实战应用,最后给出性能优化建议和方案选型指南,为开发者提供了从理论到实践的完整参考。

1065

微服务架构下分布式事务解决方案——阿里GTS

1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源社区等都开始了微服务的讨论和实践。Hailo有160个不同服务构成,NetFlix有大约600个服务。国内方面,阿里巴巴、腾讯、360、京东、58同城等很多互联网公司都进行了微服务化实践。当前微服务的开发框架也非常多,...

GarfieldEr007的专栏 738

【转】微服务架构下分布式事务方案

1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单、松耦合的服务,这样可以降低开发难度、增强扩展性、便于敏捷开发。当前被越来越多的开发者推崇,很多互联网行业巨头、开源社区等都开始了微服务的讨论和实践。Hailo有160个不同服务构成,NetFlix有大约600个服务。国内方面,阿里巴巴、腾讯、360、京东、58同城等很多互联网公司都进行了微服务化实践。当前微服务的开发框架也非常多,...

sinolover的专栏 329

浅谈微服务架构分布式事务方案

第一节:了解常用的分布式解决方案 一、分布式事务方案:最终一致性、事务补偿、TCC、两阶段提交、最大能力通知等。具体结合业务场景。很多大型企业自主研发了自己的分布式事务解决方案,如:支付宝 XTS,去哪儿 QMQ。 1.基于可靠消息的最终一致性解决方案(异步确保型)(适用场景比较广) 2.TCC事务补偿性方案(try-confirm-cancel)(也属于两阶段型的,但区别于2PC协议的两阶段提交) 3.最大努力通知型方案(一般跨平台通知比较常用) 第二节:解决方案效果展示(结合支付系统真实应用场景)

qingyangcc123的博客 247
上一篇: 今天,我们来聊聊分布式事务
下一篇: 互联网薪资“高开低走”,你的能力是否真的可以匹配高薪?
普通网友
博客等级 码龄7年 55粉丝 197原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值