「来源:|冰河技术ID:hacker-binghe」
大家好,我是冰河~~
继出版《海量数据处理与大数据技术实战》和《MySQL技术大全:开发、优化与运维实战》之后,冰河联合猫大人一起推出了另一部硬核书籍《深入理解分布式事务:原理与实战》。
随着互联网的不断发展,互联网企业的业务在飞速变化,推动着系统架构也在不断地发生变化。总体来说,系统架构大致经历了
单体应用架构→垂直应用架构→分布式架构→SOA架构→微服务架构的演变。
如今微服务技术越来越成熟,很多企业都采用微服务架构来支撑内部及对外的业务,尤其是在高并发大流量的电商业务场景下,微服务更是企业首选的架构模式。
微服务的普及也带来了新的问题。原本单一的应用架构只需要连接一台数据库实例即可完成所有业务操作,业务方法的逻辑在一个事务中即可完成,涉及的所有数据库操作要么全部提交,要么全部不提交,很容易实现数据的一致性。
而在微服务架构下,原本单一的应用被拆分为一个个很小的服务,每个服务都有其独立的业务和数据库,服务与服务之间的交互通过接口或者远程过程调用(RemoteProcedureCall,RPC)的方式进行,此时,服务与服务之间的数据一致性问题就变得棘手了。
因为微服务这种架构模式本质上就是多个应用连接多个数据库共同完成一组业务逻辑,所以数据一致性问题就凸显出来了。除此之外,多个应用连接同一个数据库和单个应用连接多个数据库也会产生数据一致性问题。可以这么说,在互联网行业,任何企业都会或多或少地遇到数据一致性问题。业界将这种数据一致性问题称为分布式事务问题。
为了解决分布式事务问题,业界提出了一些著名的理论,比如CAP理论和Base理论,并针对这些理论提出了很多解决方案,比如解决强一致性分布式事务的DTP模型、XA事务、2PC模型、3PC模型,解决最终一致性分布式事务的TCC、可靠消息最终一致性、最大努力通知型等模型。不少企业和开源组织,甚至个人都基于这些模型实现了比较通用的分布式事务框架。
深入掌握分布式事务已然成为互联网行业中每个中高级开发人员和架构师必须掌握的技能,而熟练掌握分布式事务产生的各种场景和解决方案也成为各大互联网公司对应聘者的基本要求。
《深入理解分布式事务:原理与实战》从实际需求出发,全面且细致地介绍了有关分布式事务的基础知识、解决方案、实现原理和源码实战。
5个维度全面展开
20位大厂专家力荐
10个框架的分布式事务实现
6种通用分布式事务解决方案
8种分布式事务原理解析
4个生产环境综合案例
余幅原理图和流程图
1
本书特色
5个维度展开,分布式事务从0到
NO.1基础知识维度
事务和分布式事务的概念和基础知识,MySQL和Spring的事务实现原理
NO.2解决方案维度
强一致性分布式事务解决方案、Z终一致性分布式事务解决方案
NO.3原理分析维度
XA强一致性分布式事务、TCC分布式事务、可靠消息Z终一致性分布式事务、Z大努力通知型分布式事务的原理
NO.4源码实现维度
Atomikos,Narayana框架实现XA强一致性分布式事务解决方案,Hmily分布式事务框架实现TCC分布式事务
NO.5工程实践维度
XA强一致性分布式事务、TCC分布式事务、可靠消息Z终一致性分布式事务和Z大努力通知型分布式事务的工程实践方法
大量图解和开发案例,学习事半功倍
为了方便读者理解,每章根据需要配有相关的原理图和流程图,并提供完整的实战案例源码。书中的每个解决方案都经过了高并发大流量生产环境的考验,可以直接拿来解决实际生产环境中的分布式事务问题。
图1-2本地事务的执行流程
图8-4XA分布式事务流程图
图10-3独立消息服务实现的分布式事务
读者可以参考本书的案例进行学习,并运行本书的案例代码,以更深入地理解和掌握分布式事务。这些案例代码和图解的draw.io源文件收录于随书资料里,读者可以从下面的链接获取相关内容。
GitHub: