为啥说分布式事务不再适用于微服务架构

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥说分布式事务不再适用于微服务架构相关的知识,希望对你有一定的参考价值。

  楼主这个说法很标准,不是不可用,只是不适用。我们看下为什么分布式事务不再适用于微服务架构。
  多个微服务应用就构成了分布式系统,由此会带来固有的复杂性。开发者需要在RPC或者消息传递之间选择并完成进程间通讯机制。更甚于,他们必须写代码来处理消息传递中速度过慢或者不可用等局部失效问题。当然这并不是什么难事,但相对于单体式应用中通过语言层级的方法或者进程调用,微服务下这种技术显得更复杂一些。
  另外一个关于微服务的挑战来自于分区的数据库架构。商业交易中同时给多个业务分主体更新消息很普遍。这种交易对于单体式应用来说很容易,因为只有一个数据库。在微服务架构应用中,需要更新不同服务所使用的不同的数据库。使用分布式交易并不一定是好的选择,不仅仅是因为CAP理论,还因为今天高扩展性的NoSQL数据库和消息传递中间件并不支持这一需求。最终你不得不使用一个最终一致性的方法,从而对开发者提出了更高的要求和挑战。
  部署一个微服务应用也很复杂,一个分布式应用只需要简单在复杂均衡器后面部署各自的服务器就好了。每个应用实例是需要配置诸如数据库和消息中间件等基础服务。相对比,一个微服务应用一般由大批服务构成。例如,根据Adrian Cockcroft,Hailo有160个不同服务构成,NetFlix有大约600个服务。每个服务都有多个实例。这就造成许多需要配置、部署、扩展和监控的部分,除此之外,你还需要完成一个服务发现机制,以用来发现与它通讯服务的地址(包括服务器地址和端口)。传统的解决问题办法不能用于解决这么复杂的问题。接续而来,成功部署一个微服务应用需要开发者有足够的控制部署方法,并高度自动化。
  总而言之,一句话概括,由于每个微服务实现方式五花八门,当微服务多了情况下,一个服务流程可能会涉及多个服务,如果这些微服务耦合过于强,那必然要确保其事务的一致性,但是这是个及其困难的事情。
参考技术A 传统应用使用本地事务和分布式事务保证数据一致性,但是在微服务架构中数据都是服务私有的,需要通过服务提供的API来访问,所以分布式事务不再适用微服务架构。

28套分布式架构视频教程!总有你想要的!

前两天有个兄弟说让我在公众号上讲讲分布式事务,原因是他有6年大厂分布式工作经验,面试过的兄弟不说一千,也有几百,其中绝大部分人都栽在分布式上了
时下随着微服务架构体系的流行,面试的题目也不再是早些年单纯的问点SSH框架知识、数据结构;而是高并发、高可用、分布式事务、分布式服务治理、文件系统,反正和分布式沾边的都会问,不仅会问分布式事务的原理,还会问到分布式事务在工作场景中的具体应用...

所以,不但要会用分布式事务,最重要的还是解决平常在工作中“怎么办”的问题 (“更强了”大哥经常会问的问题);

1、两阶段提交(2PC, Two-phase Commit)在实际工作中如何实现?

2、在不同的分布式架构模式下,如何解决分布式事务问题?

3、TCC 补偿模式在实际工作场景下如何应用?

4、如何保证数据的最终一致性?

为了帮助同学们解决分布式应用难题、让学习分布式变的轻松高效,今天给大家分享一场免费的训练营活动, 关于这些问题,在这次《彻底解密企业级分布式事务设计与实践》的课程里都会讲到。课程为期3天,7.7-7.9每晚20:00直播上课,向想要深度提升分布式事务设计能力的同学免费开放!
(课程干不干,大家看下图就知道了!)
28套分布式架构视频教程!总有你想要的!
28套分布式架构视频教程!总有你想要的!

28套分布式架构视频教程!总有你想要的!

报名及领取资料请添加小姐姐微信

(还有惊喜小礼物赠送哦)


1 

授课老师很厉害么


孙玄(江湖人称:玄姐;圈内朋友都知道)

擅长领域:系统架构设计,大数据,运维、机器学习、技术管理等领域。


28套分布式架构视频教程!总有你想要的!


2

通过此次课程,你将收获


1、快速认知事务与分布式事务的本质和原理,玩转分布式事务

2、深入理解在不同分布式架构下,分布式事务解决问题的方法论

3、分布式事务TCC、SAGAS、Seata模式解析、场景分析

4、实战案例:亿级流量|电商场景下分布式事务实战解析


分布式事务一直都是面试中比较热点的问题,也是进阶高级Java工程师必备的知识点。希望各位同学都能在本次的训练营中吃透分布式事务!

参加本次训练营,你可以获得如下福利

STEP1

STEP2

训练营开营前,小助手会将您拉入《百万架构师魔鬼训练营》中,您有任何技术问题,都可以在群里咨询,会有资深技术老师解答;也会在群中举行抽奖活动~如有打扰,可选择屏蔽~

STEP3

原价值599元的资料免费送!企业级微服务/数据中台架构设计与实践干货系列,共28个视频资料免费送!!限时领取!


28套分布式架构视频教程!总有你想要的!


28套分布式架构视频教程!总有你想要的!

扫码领取原价599元资料包/28个学习视频

企业级微服务/数据中台架构设计与实践


3

往期训练营学员都说好!!


截止现在,训练营活动已有超过万人学习了,帮到很多人,好评如潮,我随手截了一些图:



28套分布式架构视频教程!总有你想要的!

28套分布式架构视频教程!总有你想要的!




上下滚动查看更多


报名及领取资料请添加小姐姐微信


学好分布式事务,吊打大厂面试官,当形成自己的思维方法论和独立的学习技巧的时候,任何技术对于你来说也不过是几天时间就能把玩的很好的玩具,即使写了n年代码,头也不会秃,哈哈


以上是关于为啥说分布式事务不再适用于微服务架构的主要内容,如果未能解决你的问题,请参考以下文章

51私董研习社为什么说传统分布式事务不再适用于微服务架构?

为什么说失败的微服务架构,大多数死在分布式事务?

了解”分布式事务一致性“看这一篇就够了

分布式事务解决方案与适用场景分析

关于分布式架构被问最多的问题,今天一次性说清!

如何选择最适合你的分布式事务方案