技术教育社区
www.teccses.org

Spring Cloud微服务架构实战

封面

作者:周喜平

页数:286

出版社:人民邮电出版社

出版日期:2022

ISBN:9787115597694

电子书格式:pdf/epub/txt

内容简介

本书以实战化训练为宗旨,用详尽且经典的案例讲述 Spring Cloud 的项目搭建方法和常用技术。每个案例都配有详细讲解和代码,可以帮助读者快速掌握书中的各个知识点。本书首先介绍系统架构的发展历史、常见的微服务架构、Spring Boot 和 Spring Cloud 的关系;然后介绍Spring Cloud 开发环境的搭建,如 JDK、IntelliJ IDEA、Maven 的安装和配置;继而介绍微服务环境的创建、微服务项目案例的搭建和微服务的调用;最后介绍常用的微服务技术,如 Eureka、Ribbon、Feign、Hystrix、Spring Cloud Gateway、Spring Cloud Stream 和 Spring Cloud Config。
本书适合具备 Java 基础的开发人员、对微服务架构和 Spring Cloud 感兴趣的读者、想要了解 Spring 或Spring Cloud 的开发人员阅读。对尝试选择或实施微服务架构的团队来说,本书具有较高的参考价值。

作者简介

周喜平,教授,研究方向为软件工程、软件开发技术。河南省优秀教师,河南省教育厅学术带头人,河南省高等学校计算机类专业教学指导委员会委员。发表论文30余篇,出版专著7部,主持和参与科研项目20余项,其中“河南省外经贸厅办工自动化系统”“电力及施工企业固定资产管理系统”“惠农资金管理系统”“地市级居民医疗保险信息管理系统”“纯电动汽车高并发数据采集平台”“基于标准分的教师评教系统”“智慧消防云平台”等项目均采用Java工具实现。

本书特色

● 系统深入:由浅入深,详细介绍微服务相关知识,依次击破操作难点
● 快速进阶:通过基本知识,引出进阶知识,进一步提升开发技术
● 案例丰富:书中列举多个案例,在实战中学习,增加实战经验

目录

001 第 1 章 认识微服务

002 1.1 系统架构的发展历史

002   1.1.1 单体架构

003   1.1.2 垂直架构

003   1.1.3 分布式架构

004   1.1.4 面向服务的架构

004   1.1.5 微服务架构

005 1.2 常见的微服务架构

006   1.2.1 Spring Cloud

008   1.2.2 Dubbo

009   1.2.3 Dropwizard

009   1.2.4 Cricket

009   1.2.5 Jersey

009   1.2.6 Play

009 1.3 Spring Boot 和 Spring Cloud 的关系

010   1.3.1 认识 Spring Boot

011   1.3.2 Spring Boot 整合 Spring Cloud

013 第 2 章 准备开发环境

014 2.1 Java 开发环境 JDK

014   2.1.1 下载 JDK

016   2.1.2 安装 JDK

018   2.1.3 配置 Java 环境变量

019 2.2 开发工具 IntelliJ IDEA

019   2.2.1 下载 IntelliJ IDEA

020   2.2.2 安装 IntelliJ IDEA

026 2.3 项目管理工具 Maven

027   2.3.1 下载 Maven

028   2.3.2 安装 Maven

028   2.3.3 配置 Maven 环境变量

029   2.3.4 配置 Maven 本地仓库和下载源

030   2.3.5 与 IntelliJ IDEA 集成

031 第 3 章 贯穿案例

032 3.1 数据库

033 3.2 创建工程

033   3.2.1 创建父工程

035   3.2.2 创建子工程—用户微服务

040   3.2.3 创建子工程—商品微服务

045   3.2.4 创建子工程—订单微服务

049 3.3 使用 Postman 测试微服务

049   3.3.1 测试新增

050   3.3.2 测试查询全部

050   3.3.3 测试根据 id 查询单个

051   3.3.4 测试修改

052   3.3.5 测试删除

053 3.4 调用微服务

053   3.4.1 介绍 RestTemplate 类

053   3.4.2 使用 RestTemplate 调用微服务

054   3.4.3 分析硬编码存在的问题

055 第 4 章 Eureka 服务注册和发现

056 4.1 认识 Eureka

056   4.1.1 服务注册和服务发现

057   4.1.2 注册中心

059   4.1.3 Eureka 框架的原理

060 4.2 使用 Eureka

060   4.2.1 搭建 Eureka 注册中心

063   4.2.2 将服务注册到 Eureka 注册中心

064   4.2.3 使用 Eureka 的元数据完成服务调用

065 4.3 Eureka 服务端高可用集群

066   4.3.1 搭建 Eureka 服务端高可用集群

068   4.3.2 将服务注册到 Eureka 服务端集群

070 4.4 Eureka 常见问题

070   4.4.1 服务注册慢

070   4.4.2 服务节点剔除问题

071   4.4.3 监控页面显示 IP 地址信息

071 4.5 Eureka 源码解析

072   4.5.1 服务注册表

073   4.5.2 服务注册

075   4.5.3 接收服务心跳

076   4.5.4 服务剔除

078   4.5.5 服务下线

080   4.5.6 集群同步

084   4.5.7 获取注册表中服务实例的信息

089 第 5 章 基于 Ribbon 服务调用

090 5.1 认识 Ribbon

090   5.1.1 微服务之间的交互

091   5.1.2 Ribbon 的两个主要作用

091   5.1.3 客户端的负载均衡

093 5.2 基于 Ribbon 实现负载均衡调用

093   5.2.1 坐标依赖

094   5.2.2 工程改造

097   5.2.3 代码测试

098 5.3 Ribbon 源码解析

098   5.3.1 配置和实例初始化

100   5.3.2 负载均衡器

102   5.3.3 ILoadBalancer 的实现

105   5.3.4 负载均衡策略实现

115 第 6 章 基于 Feign 服务调用

116 6.1 认识 Feign

116   6.1.1 Java 项目中接口的调用方式

117   6.1.2 Feign 和 Ribbon 的关系

117 6.2 使用 Feign 实现服务调用

117   6.2.1 坐标依赖

117   6.2.2 工程改造

119   6.2.3 代码测试

120 6.3 Feign 自定义配置和使用

120   6.3.1 日志配置

122   6.3.2 超时时间配置

122   6.3.3 客户端组件配置

123   6.3.4 压缩配置

124   6.3.5 使用配置文件自定义 Feign 的配置

125 6.4 源码分析

125   6.4.1 核心组件与概念

126   6.4.2 动态注册 BeanDefinition

133   6.4.3 实例初始化

136   6.4.4 函数调用和网络请求

143 第 7 章 Hystrix 服务熔断

144 7.1 认识 Hystrix

144   7.1.1 雪崩效应

145   7.1.2 线程隔离

146   7.1.3 服务熔断

147 7.2 使用 REST 实现服务熔断

147   7.2.1 坐标依赖

147   7.2.2 工程改造

150   7.2.3 代码测试

150 7.3 使用 Feign 实现服务熔断

151   7.3.1 坐标依赖

151   7.3.2 工程改造

153   7.3.3 代码测试

153 7.4 使用 Hystrix 实现监控

154   7.4.1 使用 Hystrix Dashboard 查看监控数据

157   7.4.2 使用 Hystrix Turbine 聚合监控数据

159   7.4.3 断路器的状态

162   7.4.4 断路器的隔离策略

163 7.5 源码分析

164   7.5.1 封装 HystrixCommand

169   7.5.2 断路器逻辑

175 第 8 章 Spring Cloud Gateway 服务网关

176 8.1 认识 Spring Cloud Gateway

177   8.1.1 微服务网关概述

178   8.1.2 微服务网关工作流程

178 8.2 实现服务网关

179   8.2.1  创建子工程——服务网关

179   8.2.2 坐标依赖

179   8.2.3 工程改造

182   8.2.4 代码测试

183 8.3 路由规则

183   8.3.1 路由规则概述

188   8.3.2 动态路由

189   8.3.3 重写转发路径

191 8.4 过滤器

191   8.4.1 过滤器基础

192   8.4.2 局部过滤器

194   8.4.3 全局过滤器

196 8.5 网关限流

197   8.5.1 常见的限流算法

197   8.5.2 基于过滤器的限流

201   8.5.3 基于 Sentinel 的限流

205 8.6 源码解析

206   8.6.1 初始化配置

207   8.6.2 网关处理器

209   8.6.3 路由定义定位器

211   8.6.4 路由定位器

211   8.6.5 路由断言

212   8.6.6 网关过滤器

213   8.6.7 全局过滤器

213   8.6.8  API 端点

215 第 9 章 Spring Cloud Stream 消息驱动

216 9.1 认识 Spring Cloud Stream

216   9.1.1 消息队列

218   9.1.2 绑定器

219   9.1.3 发布订阅模式

220 9.2 实现消息驱动

220   9.2.1 安装 RabbitMQ

224   9.2.2 消息生产者

226   9.2.3 消息消费者

229   9.2.4 自定义消息通道

231 9.3 消费者组

232   9.3.1 工程改造

234   9.3.2 代码测试

234 9.4 消费分区

235   9.4.1 工程改造

237   9.4.2 代码测试

238 9.5 源码解析

239   9.5.1 动态注册 BeanDefinition

241   9.5.2 消息发送的流程

243   9.5.3 @StreamListener 注解的处理

249 第 10 章 Spring Cloud Config 分布式配置中心

250 10.1 认识 Spring Cloud Config

251   10.1.1 配置中心概述

251   10.1.2 其他配置中心

251 10.2 实现配置中心

251   10.2.1 配置管理

254   10.2.2 服务端

257   10.2.3 客户端

259   10.2.4 配置刷新

264 10.3 服务总线

264   10.3.1 消息代理

265   10.3.2 工程改造

270 10.4 源码解析

271   10.4.1 配置服务器

280   10.4.2 配置客户端

下载地址

立即下载

(解压密码:www.teccses.org)

Article Title:《Spring Cloud微服务架构实战》
Article link:https://www.teccses.org/1400926.html