内容简介:
《疯狂Spring Cloud微服务架构实战》以Spring Cloud为基础,深入讲解微服务开发的相关框架,包括服务管理框架Eureka、负载均衡框架Ribbon、服务客户端Feign、容错框架Hystrix、消息框架Stream等。除了介绍这些微服务相关的框架外,在本书的第11章,还介绍了如何使用Spring Data框架操作各个主流数据库(MySQL、MongoDB、Redis)。在第12章,以一个案例为基础结束本书内容,在该章中讲解了模板引擎Thymeleaf,整本书将会为大家提供一整套微服务应用开发的解决方案。
资源目录:
第1章 Spring Cloud概述 1
1.1 传统的应用 2
1.1.1 单体应用 2
1.1.2 架构演进 3
1.1.3 架构要求 4
1.2 微服务与Spring Cloud 5
1.2.1 什么是微服务 5
1.2.2 关于Netflix OSS 6
1.2.3 Spring Cloud与Netflix 6
1.2.4 Spring Cloud的主要模块 6
1.3 学习方面的准备工作 7
1.3.1 下载本书的软件及源码 7
1.3.2 导入本书的案例 7
1.4 本章小结 8
第2章 搭建开发环境 9
2.1 安装与配置Maven 10
2.1.1 关于Maven 10
2.1.2 下载与安装Maven 11
2.1.3 配置远程仓库 11
2.2 安装Eclipse 12
2.2.1 Eclipse版本 12
2.2.2 在Eclipse中配置Maven 12
2.3 Spring Boot 13
2.3.1 Spring Boot简介 13
2.3.2 新建Maven项目 14
2.3.3 编写启动类 15
2.3.4 编写控制器 16
2.3.5 发布REST WebService 17
2.4 Spring Boot配置文件 18
2.4.1 默认配置文件 18
2.4.2 指定配置文件位置 19
2.4.3 yml文件 19
2.4.4 运行时指定profiles配置 20
2.4.5 热部署 20
2.5 Spring Cloud的版本 21
2.6 本章小结 21
第3章 微服务发布与调用 22
3.1 Eureka介绍 23
3.1.1 关于Eureka 23
3.1.2 Eureka架构 23
3.1.3 服务器端 24
3.1.4 服务提供者 24
3.1.5 服务调用者 24
3.2 第一个Eureka应用 24
3.2.1 构建服务器 24
3.2.2 服务器注册开关 27
3.2.3 编写服务提供者 27
3.2.4 编写服务调用者 29
3.2.5 程序结构 32
3.3 Eureka集群搭建 33
3.3.1 本例集群结构图 33
3.3.2 改造服务器端 34
3.3.3 改造服务提供者 35
3.3.4 改造服务调用者 37
3.3.5 编写REST客户端进行测试 37
3.4 服务实例的健康自检 38
3.4.1 程序结构 39
3.4.2 使用Spring Boot Actuator 39
3.4.3 实现应用健康自检 39
3.4.4 服务查询 42
3.5 Eureka的常用配置 44
3.5.1 心跳检测配置 44
3.5.2 注册表抓取间隔 44
3.5.3 配置与使用元数据 45
3.5.4 自我保护模式 45
3.6 本章小结 46
第4章 负载均衡 47
4.1 Ribbon介绍 48
4.1.1 Ribbon简介 48
4.1.2 Ribbon子模块 48
4.1.3 负载均衡器组件 48
4.2 第一个Ribbon程序 49
4.2.1 编写服务 49
4.2.2 编写请求客户端 51
4.2.3 Ribbon的配置 52
4.3 Ribbon的负载均衡机制 53
4.3.1 负载均衡器 53
4.3.2 自定义负载规则 54
4.3.3 Ribbon自带的负载规则 56
4.3.4 Ping机制 57
4.3.5 自定义Ping 59
4.3.6 其他配置 59
4.4 在Spring Cloud中使用Ribbon 60
4.4.1 准备工作 60
4.4.2 使用代码配置Ribbon 61
4.4.3 使用配置文件设置Ribbon 63
4.4.4 Spring使用Ribbon的API 64
4.5 RestTemplate负载均衡 66
4.5.1 @LoadBalanced注解概述 66
4.5.2 编写自定义注解以及拦截器 66
4.5.3 使用自定义拦截器以及注解 68
4.5.4 在控制器中使用RestTemplate 69
4.6 本章小结 71
第5章 REST客户端Feign 72
5.1 REST客户端 73
5.1.1 使用CXF调用REST服务 73
5.1.2 使用Restlet调用REST服务 74
5.1.3 Feign框架介绍 75
5.1.4 第一个Feign程序 76
5.1.5 请求参数与返回对象 77
5.2 使用Feign 78
5.2.1 编码器 79
5.2.2 解码器 80
5.2.3 XML的编码与解码 80
5.2.4 自定义编码器与解码器 83
5.2.5 自定义Feign客户端 83
5.2.6 使用第三方注解 85
5.2.7 Feign解析第三方注解 86
5.2.8 请求拦截器 89
5.2.9 接口日志 89
5.3 在Spring Cloud中使用Feign 90
5.3.1 Spring Cloud整合Feign 91
5.3.2 Feign负载均衡 93
5.3.3 默认配置 93
5.3.4 自定义配置 94
5.3.5 可选配置 97
5.3.6 压缩配置 98
5.4 本章小结 98
第6章 Spring Cloud的保护机制 99
6.1 概述 100