深入理解Spring Cloud与微服务构建 第2版pdf下载

深入理解Spring Cloud与微服务构建 第2版百度网盘pdf下载

作者:
简介:深入理解Spring Cloud与微服务构建 第2版
出版社:
出版时间:2019-09
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息

书名:深入理解Spring Cloud与微服务构建 第2版

定价:79.00元

作者:方志朋

出版社:人民邮电出版社

出版日期:2019-09-01

ISBN:9787115514882

字数:

页码:296

版次:2

装帧:平装

开本:16开

商品重量:0.4kg

编辑推荐


作为Java语言的落地微服务框架,Spring Cloud已经在各大企业普遍应用,各大云厂商也支持Spring Cloud微服务框架的云产品,因此熟练掌握Spring Cloud是面试者的加分项,《深入理解Spring Cloud与微服务构建 第2版》的十八章内容全面涵盖了通过Spring Cloud构建微服务的相关知识点,并且在版的基础上针对Spring Cloud的新功能做了全新改版。 n
1.基于Greenwich版本,全面讲解Spring Cloud原生组件。 n
2.深入原理,辅以图解,生动串联整个Spring Cloud生态。 n
3.总结提升,利用综合案例展现构建微服务系统的全过程。 n
4.附带全书源码供,读者可到异步社区本书页面下载,方便学习和使用。

内容提要


《深入理解Spring Cloud与微服务构建 第2版》共分为18章,全面涵盖了通过Spring Cloud构建微服务的相关知识点。、2章详细介绍了微服务架构和Spring Cloud。第3、4章讲解了通过Spring Cloud构建微服务的准备工作。第5~14章以案例为切入点,讲解了通过Spring Cloud构建微服务的基础组件,包括Eureka、Ribbon、Feign、Hystrix、Zuul、Gateway、Consul、Config、Sleuth、Admint等组件。5~17章讲述了使用Spring Cloud OAuth2来保护微服务系统的相关知识。8章用一个综合案例全面讲解了如何使用Spring Cloud构建微服务,可用于实际开发中。

目录


第 1章 微服务简介1 n
1.1 单体架构及其存在的不足 1 n
1.1.1 单体架构简介 1 n
1.1.2 单体架构存在的不足 2 n
1.1.3 单体架构使用服务器集群及存在的不足 2 n
1.2 微服务 3 n
1.2.1 什么是微服务 4 n
1.2.2 微服务的优势 8 n
1.3 微服务的不足 9 n
1.3.1 微服务的复杂度 9 n
1.3.2 分布式事务 9 n
1.3.3 服务的划分 11 n
1.3.4 服务的部署 11 n
1.4 微服务和SOA的关系 12 n
1.5 微服务的设计原则 12 n
第 2章 Spring Cloud简介 14 n
2.1 微服务应该具备的功能 14 n
2.1.1 服务的注册与发现 15 n
2.1.2 服务的负载均衡 15 n
2.1.3 服务的容错 16 n
2.1.4 服务网关 18 n
2.1.5 服务配置的统一管理 19 n
2.1.6 服务链路追踪 20 n
2.2 Spring Cloud 20 n
2.2.1 简介 20 n
2.2.2 常用组件 21 n
2.2.3 项目一览 22 n
2.3 Dubbo简介 23 n
2.4 Spring Cloud与Dubbo比较 24 n
2.5 Kuberes简介 25 n
2.6 Spring Could与Kuberes比较 27 n
2.7 总结 28 n
第3章 构建微服务的准备 29 n
3.1 K的安装 29 n
3.1.1 K的下载和安装 29 n
3.1.2 环境变量的配置 29 n
3.2 IDEA的安装 30 n
3.2.1 IDEA的下载 30 n
3.2.2 用IDEA创建一个Spring Boot工程 31 n
3.2.3 用IDEA启动多个Spring Boot工程实例 33 n
3.3 构建工具Maven的使用 34 n
3.3.1 Maven简介 34 n
3.3.2 Maven的安装 34 n
3.3.3 Maven的核心概念 36 n
3.3.4 编写Pom文件 36 n
3.3.5 Maven构建项目的生命周期 38 n
3.3.6 常用的Maven命令 39 n
第4章 开发框架Spring Boot 41 n
4.1 Spring Boot简介 41 n
4.1.1 Spring Boot的特点 41 n
4.1.2 Spring Boot的优点 42 n
4.2 用IDEA构建Spring Boot工程 42 n
4.2.1 项目结构 42 n
4.2.2 在Spring Boot工程中构建Web程序 43 n
4.2.3 Spring Boot的测试 44 n
4.3 Spring Boot配置文件详解 45 n
4.3.1 自定义属性 45 n
4.3.2 将配置文件的属性赋给实体类 46 n
4.3.3 自定义配置文件 47 n
4.3.4 多个环境的配置文件 48 n
4.4 运行状态监控Actuator 48 n
4.4.1 查看运行程序的健康状态 50 n
4.4.2 查看运行程序的Bea51 n
4.4.3 使用Actuator关闭应用程序 53 n
4.4.4 使用shell连接Actuator 54 n
4.5 Spring Boot整合JPA 55 n
4.6 Spring Boot整合Redis 58 n
4.6.1 Redis简介 58 n
4.6.2 Redis的安装 58 n
4.6.3 在Spring Boot中使用Redis 58 n
4.7 Spring Boot整合Swagger2,搭建Restful API在线文档 60 n
第5章 服务注册和发现Eureka 64 n
5.1 Eureka简介 64 n
5.1.1 什么是Eureka 64 n
5.1.2 为什么选择Eureka 64 n
5.1.3 Eureka的基本架构 65 n
5.2 编写Eureka Server 65 n
5.3 编写Eureka Client 68 n
5.4 源码解析Eureka 71 n
5.4.1 Eureka的一些概念 71 n
5.4.2 Eureka的高可用架构 72 n
5.4.3 Register服务注册 72 n
5.4.4 Renew服务续约 76 n
5.4.5 为什么Eureka Client获取服务实例这么慢 77 n
5.4.6 Eureka 的自我保护模式 78 n
5.5 构建高可用的Eureka Server集群 79 n
5.6 总结 81 n
第6章 负载均衡Ribbo82 n
6.1 RestTemplate简介 82 n
6.2 Ribbon简介 83 n
6.3 使用RestTemplate和Ribbon来消费服务 83 n
6.4 LoadBalancerClient简介 86 n
6.5 源码解析Ribbo88 n
第7章 声明式调用Feig99 n
7.1 写一个Feign客户端 99 n
7.2 FeignClient详解 103 n
7.3 FeignClient的配置 104 n
7.4 从源码的角度讲解Feign的工作原理 105 n
7.5 在Feign中使用HttpClient和OkHttp 108 n
7.6 Feign是如何实现负载均衡的 110 n
7.7 总结 112 n
第8章 熔断器Hystrix 113 n
8.1 Hystrix简介 113 n
8.2 Hystrix解决的问题 113 n
8.3 Hystrix的设计原则 115 n
8.4 Hystrix的工作机制 115 n
8.5 在RestTemplate和Ribbon上使用熔断器 116 n
8.6 在Feign上使用熔断器 117 n
8.7 使用Hystrix Dashboard监控熔断器的状态 118 n
8.7.1 在RestTemplate中使用Hystrix Dashboard 118 n
8.7.2 在Feign中使用Hystrix Dashboard 121 n
8.8 使用Turbine聚合监控 122 n
第9章 路由网关Spring Cloud Zuul 124 n
9.1 为什么需要Zuul 124 n
9.2 Zuul的工作原理 124 n
9.3 案例实战 126 n
9.3.1 搭建Zuul服务 126 n
9.3.2 在Zuul上配置API接口的版本号 129 n
9.3.3 在Zuul上配置熔断器 130 n
9.3.4 在Zuul中使用过滤器 131 n
9.3.5 Zuul的常见使用方式 133 n
第 10章 服务网关 135 n
10.1 服务网关的实现原理 135 n
10.2 断言工厂 136 n
10.2.1 After路由断言工厂 136 n
10.2.2 Header断言工厂 138 n
10.2.3 Cookie路由断言工厂 139 n
10.2.4 Host路由断言工厂 140 n
10.2.5 Method路由断言工厂 140 n
10.2.6 Path 路由断言工厂 141 n
10.2.7 Query 路由断言工厂 141 n
10.3 过滤器 142 n
10.3.1 过滤器的作用 143 n
10.3.2 过滤器的生命周期 144 n
10.3.3 网关过滤器 144 n
10.3.4 全局过滤器 151 n
10.4 限流 153 n
10.4.1 常见的限流算法 153 n
10.4.2 服务网关的限流 154 n
10.5 服务化 156 n
10.5.1 工程介绍 156 n
10.5.2 service-gateway工程详细介绍 157 n
10.6 总结 159 n
第 11章 服务注册和发现Consul 160 n
11.1 什么是Consul 160 n
11.1.1 基本术语 160 n
11.1.2 Consul的特点和功能 161 n
11.1.3 Consul的原理 161 n
11.1.4 Consul的基本架构 161 n
11.1.5 Consul服务注册发现流程 163 n
11.2 Consul与Eureka比较 163 n
11.3 下载和安装Consul 164 n
11.4 使用Spring Cloud Consul进行服务注册和发现 165 n
11.4.1 服务提供者consul-provider 165 n
11.4.2 服务消费者consul-provider 167 n
11.5 使用Spring Cloud Consul Config做服务配置中心 168 n
11.6 动态刷新配置 170 n
11.7 总结 171 n
第 12章 配置中心Spring Cloud Config 172 n
12.1 Config Server从本地读取配置文件 172 n
12.1.1 构建Config Server 172 n
12.1.2 构建Config Client 174 n
12.2 Config Server从远程Git仓库读取配置文件 175 n
12.3 构建高可用的Config Server 176 n
12.3.1 构建Eureka Server 177 n
12.3.2 改造Config Server 178 n
12.3.3 改造Config Client 178 n
12.4 使用Spring Cloud Bus刷新配置 180 n
12.5 将配置存储在MySQL数据库中 182 n
12.5.1 改造config-server工程 182 n
12.5.2 初始化数据库 183 n
第 13章 服务链路追踪Spring Cloud Sleuth 184 n
13.1 为什么需要Spring Cloud Sleuth 184 n
13.2 基本术语 184 n
13.3 案例讲解 186 n
13.3.1 启动ZipkiServer 187 n
13.3.2 构建服务提供者 187 n
13.3.3 构建服务消费者 189 n
13.3.4 项目演示 191 n
13.4 在链路数据中添加自定义数据 192 n
13.5 使用RabbitMQ 传输链路数据 192 n
13.6 在MySQL数据库中存储链路数据 194 n
13.7 在ElasticSearch中存储链路数据 195 n
13.8 用Kibana展示链路数据 196 n
第 14章 微服务监控Spring Boot Admi198 n
14.1 使用Spring Boot Admin监控Spring Boot应用程序 199 n
14.1.1 创建Spring Boot AdmiServer 199 n
14.1.2 创建Spring Boot AdmiClient 200 n
14.2 使用Spring Boot Admin监控Spring Cloud微服务 202 n
14.2.1 构建AdmiServer 202 n
14.2.2 构建AdmiClient 204 n
14.3 在Spring Boot Admin中添加Security和Mail组件 205 n
14.3.1 Spring Boot Admin集成Security组件 206 n
14.3.2 Spring Boot Admin集成Mail组件 208 n
第 15章 Spring Boot Security详解 209 n
15.1 Spring Security简介 209 n
15.1.1 什么是Spring Security 209 n
15.1.2 为什么选择Spring Security 209 n
15.1.3 Spring Security提供的安全模块 210 n
15.2 Spring Boot Security与Spring Security的关系 211 n
15.3 Spring Boot Security案例详解 211 n
15.3.1 构建Spring Boot Security工程 211 n
15.3.2 配置Spring Security 213 n
15.3.3 编写相关界面 215 n
15.3.4 Spring Security方法级别上的保护 220 n
15.3.5 从数据库中读取用户的认证信息 223 n
15.4 总结 228 n
第 16章 使用Spring Cloud OAuth2保护微服务系统 230 n
16.1 什么是OAuth2 230 n
16.2 如何使用Spring OAuth2 231 n
16.2.1 OAuth2 Provider 231 n
16.2.2 OAuth2 Client 235 n
16.3 案例分析 236 n
16.3.1 编写Eureka Server 237 n
16.3.2 编写Uaa授权服务 237 n
16.3.3 编写service-hi资源服务 244 n
16.4 总结 250 n
第 17章 使用Spring Security OAuth2和JWT保护微服务系统 251 n
17.1 JWT简介 251 n
17.1.1 什么是JWT 251 n
17.1.2 JWT的结构 252 n
17.1.3 JWT的应用场景 253 n
17.1.4 如何使用JWT 253 n
17.2 案例分析 253 n
17.2.1 案例架构设计 253 n
17.2.2 编写主Maven工程 254 n
17.2.3 编写Eureka Server 256 n
17.2.4 编写Uaa授权服务 256 n
17.2.5 编写user-service资源服务 262 n
17.3 总结 270 n
第 18章 使用Spring Cloud构建微服务综合案例 271 n
18.1 案例介绍 271 n
18.1.1 工程结构 271 n
18.1.2 使用的技术栈 271 n
18.1.3 工程架构 272 n
18.1.4 功能展示 274 n
18.2 案例详解 277 n
18.2.1 准备工作 278 n
18.2.2 构建主Maven工程 278 n
18.2.3 构建eureka-server工程 279 n
18.2.4 构建config-server工程 280 n
18.2.5 构建Zipkin工程 281 n
18.2.6 构建monitoring-service工程 282 n
18.2.7 构建uaa-service工程 284 n
18.2.8 构建gateway-service工程 286 n
18.2.9 构建admin-service工程 287 n
18.2.10 构建user-service工程 287 n
18.2.11 构建blog-service工程 290 n
18.2.12 构建log-service工程 291 n
18.3 启动源码工程 294 n
18.4 项目演示 295 n
18.5 总结 296

作者介绍


方志朋,毕业于武汉理工大学,就职于某互联网金融公司。Spring Cloud中国社区联合发起人、CSDN博客专家,专注于分布式系统和中间件等领域的研究和开发,乐于分享,爱好开源,对技术有着强烈的追求,活跃于各大技术社区。

文摘


序言