微服务架构实战基于SpringBoot、SpringCloud、Docker

微服务架构实战基于SpringBoot、SpringCloud、Docker
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者:
2018-12
版次: 1
ISBN: 9787115490902
定价: 59.80
装帧: 平装
开本: 16开
页数: 281页
正文语种: 简体中文
丛书: spring
16人买过
  • 本书主要包含微服务架构实现过程中所应具备的技术体系和工程实践,围绕实现微服务架构的基础组件和关键要素,我们将讨论使用Spring Boot构建服务、服务治理、负载均衡、服务容错、API网关、配置中心、事件驱动、服务安全、服务监控、服务测试和Docker与服务部署等核心主题,并基于这些核心主题给出具体的案例分析。 郑天民,网名天涯兰,日本足利工业大学信息工程学硕士。10年软件行业从业经验,在医疗、安防和电商行业都有所涉及,前后担任系统分析架构师、部门经理、技术总监等职务,对架构设计和技术管理有丰富的经验和深入的理解。主持过十余个面向研发人员的技术和管理类培训课程,著有《系统架构设计:程序员向架构师转型之路》、《向技术管理者转型:软件开发人员跨越行业、技术、管理的转型思维与实践》、《微服务设计原理与架构》等书籍。 第1章 微服务架构设计  1
    1.1 直面微服务架构 1
    1.1.1 分布式系统与微服务架构 1
    1.1.2 微服务架构的优势与挑战 3
    1.1.3 实施微服务架构 5
    1.2 服务建模方法 6
    1.2.1 服务的模型 6
    1.2.2 服务的边界 7
    1.2.3 服务的数据 7
    1.3 服务拆分与集成 8
    1.3.1 服务拆分 8
    1.3.2 服务集成 9
    1.4 微服务架构的基础组件和
    关键要素 10
    1.4.1 微服务架构的基础组件 11
    1.4.2 微服务架构的关键元素 11
    1.5 实现微服务架构 13
    1.5.1 微服务架构技术体系 13
    1.5.2 微服务架构实现技术选型 14
    1.6 案例分析 17
    1.7 全书架构 18
    1.8 本章小结 19
    第2章 使用Spring Boot构建
    服务 21
    2.1 引入Spring Boot 21
    2.2 基于Spring Boot的第一个服务 23
    2.2.1 环境准备 23
    2.2.2 实现RESTful服务 24
    2.3 Spring Boot常见功能 28
    2.3.1 集成Spring Data 28
    2.3.2 集成消息中间件 37
    2.3.3 系统监控 39
    2.4 Spring Boot基本原理 44
    2.5 本章小结 46
    第3章 Spring Cloud Netflix
    Eureka与服务治理 47
    3.1 服务治理解决方案 48
    3.1.1 服务治理的需求和模型 48
    3.1.2 服务治理的基本方案 49
    3.2 构建Eureka服务 52
    3.2.1 构建单个Eureka服务器 52
    3.2.2 构建Eureka服务器集群 55
    3.3 使用Eureka注册和发现服务 57
    3.3.1 通过配置实现服务注册 58
    3.3.2 获取服务注册信息 59
    3.4 Eureka基本架构 61
    3.4.1 Eureka服务注册和发现架构 61
    3.4.2 Eureka高可用架构 64
    3.4.3 Eureka区域亲和性 65
    3.5 本章小结 66
    第4章 Spring Cloud Netflix Ribbon
    与负载均衡 67
    4.1 负载均衡 68
    4.1.1 负载均衡的类型 68
    4.1.2 负载均衡的算法 70
    4.2 使用Ribbon实现客户端负载均衡 71
    4.2.1 Spring Cloud Netflix Ribbon
    简介 71
    4.2.2 使用DiscoveryClient查找服务 72
    4.2.3 通过RestTemplate调用服务 74
    4.3 Ribbon基本架构 78
    4.3.1 Ribbon核心机制 79
    4.3.2 Ribbon负载均衡策略 81
    4.3.3 @LoadBalanced注解与
    RestTemplate 82
    4.3.4 @RibbonClient注解与自定义
    负载均衡策略 83
    4.4 本章小结 85
    第5章 Spring Cloud Netflix
    Hystrix与服务容错 86
    5.1 服务消费者容错思想和模式 87
    5.1.1 服务消费者容错的需求 87
    5.1.2 服务隔离 88
    5.1.3 服务熔断 90
    5.1.4 服务回退 91
    5.2 使用Hystrix实现服务容错 91
    5.2.1 引入Hystrix 92
    5.2.2 使用Hystrix实现服务隔离 93
    5.2.3 使用Hystrix实现服务熔断 96
    5.2.4 使用Hystrix实现服务回退 99
    5.3 Hystrix基本原理 101
    5.3.1 服务隔离 101
    5.3.2 服务熔断 103
    5.3.3 Hystrix配置项 105
    5.4 本章小结 109
    第6章 Spring Cloud Netflix Zuul
    与API网关 110
    6.1 服务网关的设计理念 111
    6.1.1 服务网关的作用 111
    6.1.2 服务网关的结构和功能 112
    6.2 使用Zuul构建服务网关 113
    6.2.1 构建Zuul服务器 113
    6.2.2 配置Zuul服务路由 115
    6.3 Zuul基本架构 120
    6.3.1 ZuulFilter组件架构 120
    6.3.2 使用Zuul过滤器 124
    6.4 本章小结 129
    第7章 Spring Cloud Config
    与配置中心 130
    7.1 分布式配置中心方案 131
    7.1.1 分布式配置模型 131
    7.1.2 配置中心实现工具 133
    7.2 构建配置中心服务器 134
    7.2.1 引入Spring Cloud Config 134
    7.2.2 实现基于本地文件系统的
    配置方案 135
    7.2.3 实现基于Git的配置方案 139
    7.3 使用配置服务 140
    7.3.1 访问配置项 141
    7.3.2 配置数据安全性 145
    7.4 Spring Cloud Config特性 148
    7.4.1 Spring Cloud Config对比
    Zookeeper 148
    7.4.2 Spring Cloud Config高可用 149
    7.5 本章小结 150
    第8章 Spring Cloud Stream与
    事件驱动 151
    8.1 事件驱动架构与模型 152
    8.1.1 基本事件驱动架构与实现
    机制 152
    8.1.2 事件驱动与领域模型 155
    8.2 引入Spring Cloud Stream 157
    8.2.1 Spring Cloud Stream基本
    架构 157
    8.2.2 Spring Cloud Stream与Spring
    Integration 159
    8.2.3 Spring Cloud Stream与消息
    中间件 162
    8.3 实现消息发布者 165
    8.3.1 消息发送场景与实现流程 165
    8.3.2 在服务中添加消息发布者 166
    8.4 实现消息消费者 170
    8.4.1 消息消费场景与实现流程 170
    8.4.2 在服务中添加消息消费者 172
    8.5 本章小结 177
    第9章 Spring Cloud Security与
    服务安全 178
    9.1 服务访问安全性与OAuth协议 178
    9.1.1 微服务架构中的安全性设计 179
    9.1.2 OAuth协议 180
    9.2 构建OAuth认证服务器 184
    9.2.1 引入Spring Cloud Security 185
    9.2.2 初始化用户与客户端 186
    9.2.3 生成Token 191
    9.3 使用OAuth保护服务访问 195
    9.3.1 集成OAuth认证服务 195
    9.3.2 创建服务访问策略 196
    9.3.3 使用OAuth2RestTemplate
    传播Token 201
    9.4 本章小结 206
    第10章 Spring Cloud Sleuth与
    服务监控 207
    10.1 服务监控与Spring Cloud Sleuth 207
    10.1.1 服务监控基本原理 207
    10.1.2 引入Spring Cloud Sleuth 209
    10.2 整合Spring Cloud Sleuth与
    Zipkin 215
    10.2.1 Zipkin基本结构 215
    10.2.2 引入Zipkin 216
    10.2.3 使用Zipkin跟踪服务调用
    链路 218
    10.2.4 使用Zipkin实现自定义
    跟踪 226
    10.3 本章小结 228
    第11章 Spring Test与服务测试 230
    11.1 微服务测试的方法 231
    11.1.1 单元测试 231
    11.1.2 集成测试 233
    11.1.3 端到端测试 233
    11.2 测试Spring Boot应用程序 234
    11.2.1 初始化测试环境 234
    11.2.2 执行单元测试 237
    11.3 使用Mock和注解实施集成
    测试 241
    11.3.1 使用@JsonTest注解测试
    JSON数据 242
    11.3.2 使用@DataJpaTest注解测试
    Repository层 244
    11.3.3 使用Mock测试Service层 248
    11.3.4 使用Mock和@WebMvcTest
    注解测试Controller层 252
    11.4 消费者驱动的契约测试 254
    11.4.1 面向契约的端对端测试 254
    11.4.2 实现面向契约的端对端
    测试 257
    11.5 本章小结 266
    第12章 Docker与服务部署 267
    12.1 Docker与微服务架构 267
    12.1.1 Docker的优势 268
    12.1.2 Docker组件与命令 268
    12.2 使用Dockerfile构建服务镜像 272
    12.2.1 Dockerfile命令 272
    12.2.2 使用Dockerfile命令构建
    镜像 273
    12.3 使用Docker Compose编排
    服务 276
    12.3.1 Docker Compose组件与
    命令 276
    12.3.2 使用Docker Compose 279
    12.3.3 Docker Compose案例分析 281
    12.4 本章小结 283
    参考文献 284
  • 内容简介:
    本书主要包含微服务架构实现过程中所应具备的技术体系和工程实践,围绕实现微服务架构的基础组件和关键要素,我们将讨论使用Spring Boot构建服务、服务治理、负载均衡、服务容错、API网关、配置中心、事件驱动、服务安全、服务监控、服务测试和Docker与服务部署等核心主题,并基于这些核心主题给出具体的案例分析。
  • 作者简介:
    郑天民,网名天涯兰,日本足利工业大学信息工程学硕士。10年软件行业从业经验,在医疗、安防和电商行业都有所涉及,前后担任系统分析架构师、部门经理、技术总监等职务,对架构设计和技术管理有丰富的经验和深入的理解。主持过十余个面向研发人员的技术和管理类培训课程,著有《系统架构设计:程序员向架构师转型之路》、《向技术管理者转型:软件开发人员跨越行业、技术、管理的转型思维与实践》、《微服务设计原理与架构》等书籍。
  • 目录:
    第1章 微服务架构设计  1
    1.1 直面微服务架构 1
    1.1.1 分布式系统与微服务架构 1
    1.1.2 微服务架构的优势与挑战 3
    1.1.3 实施微服务架构 5
    1.2 服务建模方法 6
    1.2.1 服务的模型 6
    1.2.2 服务的边界 7
    1.2.3 服务的数据 7
    1.3 服务拆分与集成 8
    1.3.1 服务拆分 8
    1.3.2 服务集成 9
    1.4 微服务架构的基础组件和
    关键要素 10
    1.4.1 微服务架构的基础组件 11
    1.4.2 微服务架构的关键元素 11
    1.5 实现微服务架构 13
    1.5.1 微服务架构技术体系 13
    1.5.2 微服务架构实现技术选型 14
    1.6 案例分析 17
    1.7 全书架构 18
    1.8 本章小结 19
    第2章 使用Spring Boot构建
    服务 21
    2.1 引入Spring Boot 21
    2.2 基于Spring Boot的第一个服务 23
    2.2.1 环境准备 23
    2.2.2 实现RESTful服务 24
    2.3 Spring Boot常见功能 28
    2.3.1 集成Spring Data 28
    2.3.2 集成消息中间件 37
    2.3.3 系统监控 39
    2.4 Spring Boot基本原理 44
    2.5 本章小结 46
    第3章 Spring Cloud Netflix
    Eureka与服务治理 47
    3.1 服务治理解决方案 48
    3.1.1 服务治理的需求和模型 48
    3.1.2 服务治理的基本方案 49
    3.2 构建Eureka服务 52
    3.2.1 构建单个Eureka服务器 52
    3.2.2 构建Eureka服务器集群 55
    3.3 使用Eureka注册和发现服务 57
    3.3.1 通过配置实现服务注册 58
    3.3.2 获取服务注册信息 59
    3.4 Eureka基本架构 61
    3.4.1 Eureka服务注册和发现架构 61
    3.4.2 Eureka高可用架构 64
    3.4.3 Eureka区域亲和性 65
    3.5 本章小结 66
    第4章 Spring Cloud Netflix Ribbon
    与负载均衡 67
    4.1 负载均衡 68
    4.1.1 负载均衡的类型 68
    4.1.2 负载均衡的算法 70
    4.2 使用Ribbon实现客户端负载均衡 71
    4.2.1 Spring Cloud Netflix Ribbon
    简介 71
    4.2.2 使用DiscoveryClient查找服务 72
    4.2.3 通过RestTemplate调用服务 74
    4.3 Ribbon基本架构 78
    4.3.1 Ribbon核心机制 79
    4.3.2 Ribbon负载均衡策略 81
    4.3.3 @LoadBalanced注解与
    RestTemplate 82
    4.3.4 @RibbonClient注解与自定义
    负载均衡策略 83
    4.4 本章小结 85
    第5章 Spring Cloud Netflix
    Hystrix与服务容错 86
    5.1 服务消费者容错思想和模式 87
    5.1.1 服务消费者容错的需求 87
    5.1.2 服务隔离 88
    5.1.3 服务熔断 90
    5.1.4 服务回退 91
    5.2 使用Hystrix实现服务容错 91
    5.2.1 引入Hystrix 92
    5.2.2 使用Hystrix实现服务隔离 93
    5.2.3 使用Hystrix实现服务熔断 96
    5.2.4 使用Hystrix实现服务回退 99
    5.3 Hystrix基本原理 101
    5.3.1 服务隔离 101
    5.3.2 服务熔断 103
    5.3.3 Hystrix配置项 105
    5.4 本章小结 109
    第6章 Spring Cloud Netflix Zuul
    与API网关 110
    6.1 服务网关的设计理念 111
    6.1.1 服务网关的作用 111
    6.1.2 服务网关的结构和功能 112
    6.2 使用Zuul构建服务网关 113
    6.2.1 构建Zuul服务器 113
    6.2.2 配置Zuul服务路由 115
    6.3 Zuul基本架构 120
    6.3.1 ZuulFilter组件架构 120
    6.3.2 使用Zuul过滤器 124
    6.4 本章小结 129
    第7章 Spring Cloud Config
    与配置中心 130
    7.1 分布式配置中心方案 131
    7.1.1 分布式配置模型 131
    7.1.2 配置中心实现工具 133
    7.2 构建配置中心服务器 134
    7.2.1 引入Spring Cloud Config 134
    7.2.2 实现基于本地文件系统的
    配置方案 135
    7.2.3 实现基于Git的配置方案 139
    7.3 使用配置服务 140
    7.3.1 访问配置项 141
    7.3.2 配置数据安全性 145
    7.4 Spring Cloud Config特性 148
    7.4.1 Spring Cloud Config对比
    Zookeeper 148
    7.4.2 Spring Cloud Config高可用 149
    7.5 本章小结 150
    第8章 Spring Cloud Stream与
    事件驱动 151
    8.1 事件驱动架构与模型 152
    8.1.1 基本事件驱动架构与实现
    机制 152
    8.1.2 事件驱动与领域模型 155
    8.2 引入Spring Cloud Stream 157
    8.2.1 Spring Cloud Stream基本
    架构 157
    8.2.2 Spring Cloud Stream与Spring
    Integration 159
    8.2.3 Spring Cloud Stream与消息
    中间件 162
    8.3 实现消息发布者 165
    8.3.1 消息发送场景与实现流程 165
    8.3.2 在服务中添加消息发布者 166
    8.4 实现消息消费者 170
    8.4.1 消息消费场景与实现流程 170
    8.4.2 在服务中添加消息消费者 172
    8.5 本章小结 177
    第9章 Spring Cloud Security与
    服务安全 178
    9.1 服务访问安全性与OAuth协议 178
    9.1.1 微服务架构中的安全性设计 179
    9.1.2 OAuth协议 180
    9.2 构建OAuth认证服务器 184
    9.2.1 引入Spring Cloud Security 185
    9.2.2 初始化用户与客户端 186
    9.2.3 生成Token 191
    9.3 使用OAuth保护服务访问 195
    9.3.1 集成OAuth认证服务 195
    9.3.2 创建服务访问策略 196
    9.3.3 使用OAuth2RestTemplate
    传播Token 201
    9.4 本章小结 206
    第10章 Spring Cloud Sleuth与
    服务监控 207
    10.1 服务监控与Spring Cloud Sleuth 207
    10.1.1 服务监控基本原理 207
    10.1.2 引入Spring Cloud Sleuth 209
    10.2 整合Spring Cloud Sleuth与
    Zipkin 215
    10.2.1 Zipkin基本结构 215
    10.2.2 引入Zipkin 216
    10.2.3 使用Zipkin跟踪服务调用
    链路 218
    10.2.4 使用Zipkin实现自定义
    跟踪 226
    10.3 本章小结 228
    第11章 Spring Test与服务测试 230
    11.1 微服务测试的方法 231
    11.1.1 单元测试 231
    11.1.2 集成测试 233
    11.1.3 端到端测试 233
    11.2 测试Spring Boot应用程序 234
    11.2.1 初始化测试环境 234
    11.2.2 执行单元测试 237
    11.3 使用Mock和注解实施集成
    测试 241
    11.3.1 使用@JsonTest注解测试
    JSON数据 242
    11.3.2 使用@DataJpaTest注解测试
    Repository层 244
    11.3.3 使用Mock测试Service层 248
    11.3.4 使用Mock和@WebMvcTest
    注解测试Controller层 252
    11.4 消费者驱动的契约测试 254
    11.4.1 面向契约的端对端测试 254
    11.4.2 实现面向契约的端对端
    测试 257
    11.5 本章小结 266
    第12章 Docker与服务部署 267
    12.1 Docker与微服务架构 267
    12.1.1 Docker的优势 268
    12.1.2 Docker组件与命令 268
    12.2 使用Dockerfile构建服务镜像 272
    12.2.1 Dockerfile命令 272
    12.2.2 使用Dockerfile命令构建
    镜像 273
    12.3 使用Docker Compose编排
    服务 276
    12.3.1 Docker Compose组件与
    命令 276
    12.3.2 使用Docker Compose 279
    12.3.3 Docker Compose案例分析 281
    12.4 本章小结 283
    参考文献 284
查看详情
12
系列丛书 / 更多
微服务架构实战基于SpringBoot、SpringCloud、Docker
Spring源码深度解析第2版
郝佳 著
相关图书 / 更多
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务开发实战
[美]保罗·奥斯曼 著;邓彪 译
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务从小白到专家――SpringCloud和Kubernetes实战
姚秋辰、张昕、卿睿 著
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务设计(第2版)
(英)萨姆·纽曼(Sam Newman)
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务架构深度解析:原理、实践与进阶
王佩华
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务即学即用
[美]罗尼·米特拉(Ronnie Mitra);[美]伊拉克利·纳达雷什维利(Irakli Nadareishvili);王岩;黄俊彬
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务下的领域驱动设计
孙连山 编著
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务质量保障:测试策略与质量体系
嘉木
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务之道
[爱尔兰]理查德·罗杰(Richard Rodger)
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务与事件驱动架构
[加]亚当·贝勒马尔(Adam Bellemare) 著;温正东 译
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务项目实战派——从Spring Boot到Spring Cloud
姜桥
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务,心体验
李方
微服务架构实战基于SpringBoot、SpringCloud、Docker
微服务SpringBoot实战(面向高等职业院校基于工作过程项目式系列教材)
王新强、张明宇 编