展开全部

主编推荐语

全面分析Spring Cloud Alibaba技术组件,采用高效学习模型,深度剖析原理。

内容简介

本书针对Spring Cloud Alibaba生态下的技术组件从应用到原理进行全面的分析,涉及的技术组件包括分布式服务治理Dubbo、服务配置和服务注册中心Nacos、分布式限流与熔断Sentinel、分布式消息通信RocketMQ、分布式事务Seata及微服务网关Spring Cloud Gateway。由于Spring Cloud中所有的技术组件都是基于Spring Boot微服务框架来集成的,所以对于Spring Boot的核心原理也做了比较详细的分析。

本书中涉及的所有技术组件,笔者都采用“场景→需求→解决方案→应用→原理”高效技术学习模型进行设计,以便让读者知其然且知其所以然。在“原理”部分,笔者采用大量的源码及图形的方式来进行分析,帮助读者达到对技术组件深度学习和理解的目标。

目录

  • 版权信息
  • 推荐序1
  • 推荐序2
  • 推荐序3
  • 前言
  • 第1章 微服务的发展史
  • 1.1 从单体架构到分布式架构的演进
  • 1.1.1 单体架构
  • 1.1.2 集群及垂直化
  • 1.1.3 SOA
  • 1.1.4 微服务架构
  • 1.2 微服务架构带来的挑战
  • 1.2.1 微服务架构的优点
  • 1.2.2 微服务架构面临的挑战
  • 1.3 如何实现微服务架构
  • 1.3.1 微服务架构图
  • 1.3.2 微服务架构下的技术挑战
  • 第2章 微服务解决方案之Spring Cloud
  • 2.1 什么是Spring Cloud
  • 2.2 Spring Cloud版本简介
  • 2.3 Spring Cloud规范下的实现
  • 2.4 Spring Cloud Netflix
  • 2.5 Spring Cloud Alibaba
  • 2.5.1 Spring Cloud Alibaba的优势
  • 2.5.2 Spring Cloud Alibaba的版本
  • 第3章 Spring Cloud的核心之Spring Boot
  • 3.1 重新认识Spring Boot
  • 3.1.1 Spring IoC/DI
  • 3.1.2 Bean装配方式的升级
  • 3.1.3 Spring Boot的价值
  • 3.2 快速构建Spring Boot应用
  • 3.3 Spring Boot自动装配的原理
  • 3.3.1 自动装配的实现
  • 3.3.2 EnableAutoConfiguration
  • 3.3.3 AutoConfigurationImportSelector
  • 3.3.4 自动装配原理分析
  • 3.3.5 @Conditional条件装配
  • 3.3.6 spring-autoconfigure-metadata
  • 3.4 手写实现一个Starter
  • 3.4.1 Starter的命名规范
  • 3.4.2 实现基于Redis的Starter
  • 3.5 本章小结
  • 第4章 微服务架构下的服务治理
  • 4.1 如何理解Apache Dubbo
  • 4.2 Apache Dubbo实现远程通信
  • 4.3 Spring Boot集成Apache Dubbo
  • 4.4 快速上手ZooKeeper
  • 4.4.1 ZooKeeper的安装
  • 4.4.2 ZooKeeper的数据结构
  • 4.4.3 ZooKeeper的特性
  • 4.4.4 Watcher机制
  • 4.4.5 常见应用场景分析
  • 4.5 Apache Dubbo集成ZooKeeper实现服务注册
  • 4.5.1 Apache Dubbo集成ZooKeeper实现服务注册的步骤
  • 4.5.2 ZooKeeper注册中心的实现原理
  • 4.6 实战Dubbo Spring Cloud
  • 4.6.1 实现Dubbo服务提供方
  • 4.6.2 实现Dubbo服务调用方
  • 4.7 Apache Dubbo的高级应用
  • 4.7.1 集群容错
  • 4.7.2 负载均衡
  • 4.7.3 服务降级
  • 4.7.4 主机绑定规则
  • 4.8 Apache Dubbo核心源码分析
  • 4.8.1 源码构建
  • 4.8.2 Dubbo的核心之SPI
  • 4.8.3 无处不在的自适应扩展点
  • 4.8.4 Dubbo中的IoC和AOP
  • 4.8.5 Dubbo和Spring完美集成的原理
  • 4.9 本章小结
  • 第5章 服务注册与发现
  • 5.1 什么是Alibaba Nacos
  • 5.2 Nacos的基本使用
  • 5.2.1 Nacos的安装
  • 5.2.2 Nacos服务注册发现相关API说明
  • 5.2.3 Nacos集成Spring Boot实现服务注册与发现
  • 5.3 Nacos的高可用部署
  • 5.3.1 安装环境要求
  • 5.3.2 安装包及环境准备
  • 5.3.3 集群配置
  • 5.3.4 配置MySQL数据库
  • 5.3.5 启动Nacos服务
  • 5.4 Dubbo使用Nacos实现注册中心
  • 5.5 Spring Cloud Alibaba Nacos Discovery
  • 5.5.1 服务端开发
  • 5.5.2 消费端开发
  • 5.6 Nacos实现原理分析
  • 5.6.1 Nacos架构图
  • 5.6.2 注册中心的原理
  • 5.7 深入解读Nacos源码
  • 5.7.1 Spring Cloud什么时候完成服务注册
  • 5.7.2 NacosServiceRegistry的实现
  • 5.7.3 从源码层面分析Nacos服务注册的原理
  • 5.7.4 揭秘服务提供者地址查询
  • 5.7.5 分析Nacos服务地址动态感知原理
  • 5.8 本章小结
  • 第6章 Nacos实现统一配置管理
  • 6.1 Nacos配置中心简介
  • 6.2 Nacos集成Spring Boot实现统一配置管理
  • 6.2.1 项目准备
  • 6.2.2 启动Nacos Server
  • 6.2.3 创建配置
  • 6.2.4 启动服务并测试
  • 6.3 Spring Cloud Alibaba Nacos Config
  • 6.3.1 Nacos Config的基本应用
  • 6.3.2 动态更新配置
  • 6.3.3 基于Data ID配置YAML的文件扩展名
  • 6.3.4 不同环境的配置切换
  • 6.3.5 Nacos Config自定义Namespace和Group
  • 6.4 Nacos Config 实现原理解析
  • 6.4.1 配置的CRUD
  • 6.4.2 动态监听之Pull Or Push
  • 6.5 Spring Cloud如何实现配置的加载
  • 6.5.1 PropertySourceBootstrapConfiguration
  • 6.5.2 PropertySourceLocator
  • 6.6 Nacos Config核心源码解析
  • 6.6.1 NacosFactory.createConfigService
  • 6.6.2 NacosConfigService构造
  • 6.6.3 ClientWorker
  • 6.6.4 ClientWorker.checkConfigInfo
  • 6.6.5 LongPollingRunnable.run
  • 6.6.6 服务端长轮询处理机制
  • 6.6.7 ClientLongPolling
  • 6.7 本章小结
  • 第7章 基于Sentinel的微服务限流及熔断
  • 7.1 服务限流的作用及实现
  • 7.1.1 计数器算法
  • 7.1.2 滑动窗口算法
  • 7.1.3 令牌桶限流算法
  • 7.1.4 漏桶限流算法
  • 7.2 服务熔断与降级
  • 7.3 分布式限流框架Sentinel
  • 7.3.1 Sentinel的特性
  • 7.3.2 Sentinel的组成
  • 7.3.3 Sentinel Dashboard的部署
  • 7.4 Sentinel的基本应用
  • 7.4.1 Sentinel实现限流
  • 7.4.2 资源的定义方式
  • 7.4.3 Sentinel资源保护规则
  • 7.4.4 Sentinel实现服务熔断
  • 7.5 Spring Cloud集成Sentinel实践
  • 7.5.1 Sentinel接入Spring Cloud
  • 7.5.2 基于Sentinel Dashboard来实现流控配置
  • 7.5.3 自定义URL限流异常
  • 7.5.4 URL资源清洗
  • 7.6 Sentinel集成Nacos实现动态流控规则
  • 7.7 Sentinel Dashboard集成Nacos实现规则同步
  • 7.7.1 Sentinel Dashboard源码修改
  • 7.7.2 Sentinel Dashboard规则数据同步
  • 7.8 Dubbo集成Sentinel实现限流
  • 7.8.1 Dubbo服务接入Sentinel Dashboard
  • 7.8.2 Dubbo服务限流规则配置
  • 7.9 Sentinel热点限流
  • 7.9.1 热点参数限流的使用
  • 7.9.2 @SentinelResource热点参数限流
  • 7.9.3 热点参数规则说明
  • 7.10 Sentinel的工作原理
  • 7.11 Spring Cloud Sentinel工作原理分析
  • 7.12 Sentinel核心源码分析
  • 7.12.1 限流的源码实现
  • 7.12.2 实时指标数据统计
  • 7.12.3 服务降级的实现原理
  • 7.13 本章小结
  • 第8章 分布式事务
  • 8.1 分布式事务问题的理论模型
  • 8.1.1 X/Open分布式事务模型
  • 8.1.2 两阶段提交协议
  • 8.1.3 三阶段提交协议
  • 8.1.4 CAP定理和BASE理论
  • 8.2 分布式事务问题的常见解决方案
  • 8.2.1 TCC补偿型方案
  • 8.2.2 基于可靠性消息的最终一致性方案
  • 8.2.3 最大努力通知型
  • 8.3 分布式事务框架Seata
  • 8.3.1 AT模式
  • 8.3.2 Saga模式
  • 8.4 Seata的安装
  • 8.4.1 file存储模式
  • 8.4.2 db存储模式
  • 8.4.3 Seata服务端配置中心说明
  • 8.5 AT模式Dubbo集成Seata
  • 8.5.1 项目准备
  • 8.5.2 数据库准备
  • 8.5.3 核心方法说明
  • 8.5.4 项目启动顺序及访问
  • 8.5.5 整合Seata实现分布式事务
  • 8.6 Spring Cloud Alibaba Seata
  • 8.6.1 Spring Cloud项目准备
  • 8.6.2 集成Spring Cloud Alibaba Seata
  • 8.6.3 关于事务分组的说明
  • 8.7 Seata AT模式的实现原理
  • 8.7.1 AT模式第一阶段的实现原理
  • 8.7.2 AT模式第二阶段的原理分析
  • 8.7.3 关于事务的隔离性保证
  • 8.8 本章小结
  • 第9章 RocketMQ分布式消息通信
  • 9.1 什么是RocketMQ
  • 9.1.1 RocketMQ的应用场景
  • 9.1.2 RocketMQ的安装
  • 9.1.3 RocketMQ如何发送消息
  • 9.1.4 RocketMQ如何消费消息
  • 9.2 Spring Cloud Alibaba RocketMQ
  • 9.2.1 Spring Cloud Alibaba RocketMQ架构图
  • 9.2.2 Spring Cloud Stream消息发送流程
  • 9.2.3 RocketMQ Binder集成消息发送
  • 9.2.4 RocketMQ Binder集成消息订阅
  • 9.2.5 Spring Cloud Stream消息订阅流程
  • 9.3 RocketMQ集群管理
  • 9.3.1 整体架构设计
  • 9.3.2 基本概念
  • 9.3.3 为什么放弃ZooKeeper而选择NameServer
  • 9.4 如何实现顺序消息
  • 9.4.1 顺序消息的使用场景
  • 9.4.2 如何发送和消费顺序消息
  • 9.4.3 顺序发送的技术原理
  • 9.4.4 普通发送的技术原理
  • 9.4.5 顺序消费的技术原理
  • 9.4.6 并发消费的技术原理
  • 9.4.7 消息的幂等性
  • 9.5 如何实现事务消息
  • 9.5.1 事务消息的使用场景
  • 9.5.2 如何发送事务消息
  • 9.5.3 事务消息的技术原理
  • 9.6 高性能设计
  • 9.6.1 顺序写盘
  • 9.6.2 消费队列设计
  • 9.6.3 消息跳跃读取
  • 9.6.4 数据零拷贝
  • 9.6.5 动态伸缩能力
  • 9.6.6 消息实时投递
  • 9.7 高可用设计
  • 9.7.1 消息发送重试机制
  • 9.7.2 故障规避机制
  • 9.7.3 同步刷盘与异步刷盘
  • 9.7.4 主从复制
  • 9.7.5 读写分离
  • 9.7.6 消费重试机制
  • 9.7.7 ACK机制
  • 9.7.8 Broker集群部署
  • 9.8 本章小结
  • 第10章 微服务网关之Spring Cloud Gateway
  • 10.1 API网关的作用
  • 10.1.1 统一认证鉴权
  • 10.1.2 灰度发布
  • 10.2 网关的本质及技术选型
  • 10.2.1 OpenResty
  • 10.2.2 Spring Cloud Zuul
  • 10.2.3 Spring Cloud Gateway
  • 10.3 Spring Cloud Gateway网关实战
  • 10.3.1 spring-cloud-gateway-service
  • 10.3.2 spring-cloud-gateway-sample
  • 10.4 Spring Cloud Gateway原理分析
  • 10.5 Route Predicate Factories
  • 10.5.1 指定时间规则匹配路由
  • 10.5.2 Cookie匹配路由
  • 10.5.3 Header匹配路由
  • 10.5.4 Host匹配路由
  • 10.5.5 请求方法匹配路由
  • 10.5.6 请求路径匹配路由
  • 10.6 Gateway Filter Factories
  • 10.6.1 GatewayFilter
  • 10.6.2 GlobalFilter
  • 10.7 自定义过滤器
  • 10.7.1 自定义GatewayFilter
  • 10.7.2 自定义GlobalFilter
  • 10.8 Spring Cloud Gateway集成Nacos实现请求负载
  • 10.9 Spring Cloud Gateway集成Sentinel网关限流
  • 10.9.1 Route维度限流
  • 10.9.2 自定义API分组限流
  • 10.9.3 自定义异常
  • 10.9.4 网关流控控制台
  • 10.9.5 网关限流原理
  • 10.10 本章小结
  • 反侵权盗版声明
展开全部

评分及书评

评分不足
1个评分

出版方

电子工业出版社

电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。