注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络数据库深入理解分布式事务:原理与实战

深入理解分布式事务:原理与实战

深入理解分布式事务:原理与实战

定 价:¥119.00

作 者: 肖宇,冰河 著
出版社: 机械工业出版社
丛编项: 数据库技术丛书
标 签: 暂缺

ISBN: 9787111692232 出版时间: 2021-10-01 包装: 平装
开本: 16开 页数: 365 字数:  

内容简介

  本书的广度与深度兼备、理论与实战兼顾的分布式事务专著,它从基础知识、解决方案、原理分析、源码实现、工程实战5个维度对分布式事务做了全面、细致的讲解,试图解决你在实践中遇到的所有关于分布式事务的问题。两位作者都是分布式事务领域的资深架构专家,是Apache ShenYu(incubating)网关创始人、Hmily、RainCat、Myth等分布式事务框架的创始人。本书因为内容扎实,所以得到了来自京东、阿里、腾讯、蚂蚁金服、滴滴、饿了么、58集团、IBM等互联网大厂及Apache软件基金会的近20位专家的高度评价。 ·基础知识维度:首先全面介绍了事务和分布式事务的概念和基础知识,然后详细讲解了MySQL事务和Spring事务的实现原理; ·解决方案维度:详细介绍了分布式事务的各种解决方案,包括强一致性分布式事务解决方案和Z终一致性分布式事务解决方案; ·原理分析维度:详细讲解了分布式事务的原理,包括XA强一致性分布式事务、TCC分布式事务、可靠消息Z终一致性分布式事务和Z大努力通知型分布式事务的原理。 ·源码实现维度:深入分析了Atomikos,Narayana框架实现XA强一致性分布式事务解决方案的源码,以及Dromara开源社区的Hmily分布式事务框架实现TCC分布式事务的源码; ·工程实践维度:通过多个在生产环境中经历了高并发、大流量考验的综合案例,讲解了XA强一致性分布式事务、TCC分布式事务、可靠消息Z终一致性分布式事务和Z大努力通知型分布式事务的工程实践方法。全书配有大量流程图和原理图,便于读者阅读理解;精选了大量来自生产环境的完整案例及其代码,便于读者动手实践。阅读本书,你将体验到事半功倍的效果。

作者简介

  肖宇 分布式事务架构专家,Apache ShenYu(incubating)网关创始人,Dromara开源组织创始人,Hmily、RainCat、Myth等分布式事务框架的作者。Apache ShardingSphere Committer。 热爱开源,追求优雅代码。有丰富的微服务架构经验,尤其擅长微服务技术栈中的分布式事务、微服务架构,分布式数据库、API网关等解决方案。 冰河 互联网高级技术专家、MySQL技术专家、分布式事务架构专家。 多年来,一直致力于分布式系统架构、微服务、分布式数据库、分布式事务与大数据技术的研究,在高并发、高可用、高可扩展性、高可维护性和大数据等领域拥有丰富的架构经验。 可视化多数据源数据异构中间件mykit-data作者;《海量数据处理与大数据技术实战》和《MySQL技术大全:开发、优化与运维实战》作者;“冰河技术”微信公众号维护者。

图书目录

推荐语

前言
第一部分 分布式事务基础
第1章 事务的基本概念2
1.1 事务的特性2
1.1.1 原子性3
1.1.2 一致性3
1.1.3 隔离性3
1.1.4 持久性3
1.2 事务的类型4
1.2.1 扁平事务4
1.2.2 带有保存点的扁平事务4
1.2.3 链式事务5
1.2.4 嵌套事务5
1.2.5 分布式事务5
1.3 本地事务5
1.3.1 基本概念6
1.3.2 本地事务的执行流程6
1.3.3 本地事务的优缺点7
1.4 MySQL事务基础7
1.4.1 并发事务带来的问题7
1.4.2 MySQL事务隔离级别9
1.4.3 MySQL中各种事务隔离级别的区别10
1.4.4 MySQL事务隔离级别最佳实践11
1.4.5 MySQL中锁的分类19
1.4.6 死锁的产生和预防23
1.4.7 MySQL中的死锁问题24
1.4.8 InnoDB中的MVCC原理25
1.5 本章小结28
第2章 MySQL事务的实现原理29
2.1 Redo Log29
2.1.1 Redo Log基本概念29
2.1.2 Redo Log基本原理30
2.1.3 Redo Log刷盘规则30
2.1.4 Redo Log刷盘最佳实践32
2.1.5 Redo Log写入机制34
2.1.6 Redo Log的LSN机制35
2.1.7 Redo Log相关参数36
2.2 Undo Log36
2.2.1 Undo Log基本概念36
2.2.2 Undo Log存储方式37
2.2.3 Undo Log基本原理37
2.2.4 Undo Log实现MVCC机制37
2.2.5 Undo Log相关参数40
2.3 BinLog41
2.3.1 BinLog基本概念41
2.3.2 BinLog记录模式41
2.3.3 BinLog文件结构42
2.3.4 BinLog写入机制43
2.3.5 BinLog组提交机制43
2.3.6 BinLog与Redo Log的区别45
2.3.7 BinLog相关参数45
2.4 MySQL事务流程46
2.4.1 MySQL事务执行流程46
2.4.2 MySQL事务恢复流程47
2.5 MySQL中的XA事务48
2.5.1 XA事务的基本原理48
2.5.2 MySQL XA事务语法49
2.5.3 JDBC操作MySQL XA事务52
2.6 本章小结54
第3章 Spring事务的实现原理55
3.1 Spring事务原理55
3.1.1 JDBC直接操作事务55
3.1.2 使用Spring管理事务56
3.1.3 Spring事务分类57
3.1.4 Spring事务超时57
3.1.5 Spring事务回滚规则57
3.2 Spring事务三大接口57
3.2.1 PlatformTransactionManager接口57
3.2.2 TransactionDefinition接口58
3.2.3 TransactionStatus接口60
3.3 Spring事务隔离级别61
3.4 Spring事务传播机制62
3.4.1 7种事务传播机制类型62
3.4.2 常用的事务传播类型65
3.5 Spring事务嵌套最佳实践65
3.5.1 环境准备66
3.5.2 最佳实践场景一71
3.5.3 最佳实践场景二72
3.5.4 最佳实践场景三73
3.5.5 最佳实践场景四74
3.5.6 最佳实践场景五75
3.5.7 最佳实践场景六76
3.5.8 最佳实践场景七77
3.6 Spring事务失效的场景79
3.6.1 数据库不支持事务79
3.6.2 事务方法未被Spring管理79
3.6.3 方法没有被public修饰79
3.6.4 同一类中的方法调用80
3.6.5 未配置事务管理器80
3.6.6 方法的事务传播类型不支持事务81
3.6.7 不正确地捕获异常81
3.6.8 标注错误的异常类型82
3.7 本章小结83
第4章 分布式事务的基本概念84
4.1 分布式系统架构84
4.1.1 产生的背景84
4.1.2 架构目标和架构原则85
4.2 分布式系统架构演进86
4.2.1 单体应用架构86
4.2.2 垂直应用架构87
4.2.3 分布式架构88
4.2.4 SOA架构89
4.2.5 微服务架构89
4.3 分布式事务场景90
4.3.1 跨JVM进程90
4.3.2 跨数据库实例91
4.3.3 多服务访问单数据库91
4.4 数据一致性92
4.4.1 数据的一致性问题92
4.4.2 数据一致性解决方案93
4.5 本章小结93
第5章 分布式事务的理论知识94
5.1 CAP理论94
5.1.1 一致性94
5.1.2 可用性95
5.1.3 分区容忍性95
5.1.4 CAP的组合96
5.2 Base理论97
5.3 本章小结98
第二部分 分布式事务解决方案
第6章 强一致性分布式事务解决方案100
6.1 强一致性事务概述100
6.1.1 典型方案100
6.1.2 适用场景101
6.1.3 优缺点101
6.2 DTP模型101
6.2.1 DTP模型的重要概念101
6.2.2 DTP模型的执行流程102
6.3 2PC模型102
6.3.1 2PC模型的执行流程103
......

本目录推荐