Spring Cloud Alibaba微服务实战
定 价:79 元
- 作者:周仲清
- 出版时间:2021/6/1
- ISBN:9787301322710
- 出 版 社:北京大学出版社
- 中图法分类:TP368.5
- 页码:328
- 纸张:
- 版次:1
- 开本:16开
本书从初学者的角度出发,从微服务基础理论开始,基于Spring Boot框架搭建微服务系统。介绍了使用Spring Cloud Alibaba套件及其他热门微服务组件构建微服务系统的方法、微服务系统中常见的问题及解决方案,以及如何快速部署项目,使读者从开发到上线整体流程有一个清晰的认识。
本书分为14章。第1~3章主要介绍了微服务的基础理论和配置基础开发环境的方法,以及如何构建Spring Cloud Alibaba模板项目;第4~13章主要介绍了如何使用Spring Cloud Alibaba套件(Nacos、Sentinel等)和当下流行的微服务组件(如Spring Cloud Gateway、Spring Cloud Stream等)搭建微服务系统,解决开发中的常见问题;第14章主要介绍了如何使用Jenkins + Gitlab + Docker部署服务,使其又快又稳。通过对本书的学习,读者能够熟知程序由开发到上线的整体流程。
本书内容丰富,案例通俗易懂,几乎涵盖了目前Spring Cloud的全部热门组件,特别适合想要了解Spring Cloud热门组件以及想搭建微服务系统的读者阅读。
周仲清,广横易科技有限公司技术专家,先后担任过技术组长、技术总监。负责公司基础架构建设、业务代码编写、服务部署上线,以及解决线上问题。近6年来主要从事连接服务、数据爬虫、微服务系统开发、微服务服务架构部署、参数调优等。
第1章 微服务概述 1
1.1单体架构、SOA 和微服务 2
1.2为什么使用微服务 2
1.3小结 4
第2章 微服务技术栈 5
2.1微服务所需要的技术栈 6
2.2Spring Cloud 技术栈对应实现概览 6
2.3Spring Cloud Alibaba 简介 7
2.4小结 7
第3章 环境搭建 8
3.1Java 开发环境配置 9
3.2MySql 的安装和配置 9
3.3Spring Boot 的起步 13
3.4建立 Spring Cloud Alibaba 模板项目 15
3.5小结 16
第4章 服务命名管理、配置中心、注册中心——Nacos 17
4.1Nacos 简介 18
4.2Nacos 下载和安装 18
4.3使用 Nacos 服务注册中心功能 19
4.4使用 Nacos 配置中心功能 26
4.5Nacos 持久化配置 33
4.6Nacos 集群部署 35
4.7注册中心产品对比 47
4.8Nacos 的 CP 和 AP 48
4.9源码分析 49
4.10小结 107
第5章 远程调用——RestTemplate+Ribbon 108
5.1RestTemplate 简介 109
5.2Ribbon 简介 109
5.3Ribbon 自带的负载均衡规则 109
5.4替换 Ribbon 的负载均衡规则 110
5.5RandomRule 规则源码解析 111
5.6自定义负载均衡规则 113
5.7小结 114
第6章 流量控制框架——Sentinel 115
6.1Sentinel 简介 116
6.2Sentinel 同类产品对比 116
6.3下载和运行 117
6.4项目集成 Sentinel 118
6.5使用 Sentinel 常用规则 122
6.6使用 @SentinelResource 注解 131
6.7Sentinel 数据持久化 139
6.8集群流控 146
6.9小结 154
第7章 远程调用——OpenFeign 155
7.1OpenFeign 简介 156
7.2集成 OpenFeign 156
7.3代码小优化 159
7.4结合 Sentinel 规则使用 160
7.5对于异常情况的处理 160
7.6实现负载均衡 161
7.7OpenFeign 超时配置 162
7.8OpenFeign 详细日志 164
7.9请求和响应压缩 166
7.10传递参数 168
7.11小结 172
第8章 远程调用——Dubbo Spring Cloud 173
8.1Dubbo Spring Cloud 简介 174
8.2Dubbo Spring Cloud 主要特性 174
8.3代码集成 Dubbo Spring Cloud 174
8.4传递对象 178
8.5结合 Sentinel 功能 180
8.6实现负载均衡 181
8.7小结 181
第9章 服务网关——Spring Cloud Gateway 182
9.1Spring Cloud Gateway 简介 183
9.2集成 Spring Cloud Gateway 183
9.3整合 Nacos 186
9.4Predicate( 断言 ) 188
9.5Filter( 过滤器 ) 194
9.6整合 Sentinel 功能 202
9.7超时配置 206
9.8CORS 配置 207
9.9关于网关高可用 209
9.10小结 210
第 10 章 解决分布式事务——Seata 211
10.1分布式事务问题 212
10.2分布式事务问题演示 212
10.3分布式事务解决方案概览 217
10.4Seata 简介 221
10.5Seata 下载、安装和配置 222
10.6整合 Seata 解决分布式事务问题 223
10.7Seata 运行流程解析 231
10.8Seata 服务端高可用 232
10.9小结 233
第 11 章 整合消息系统——Spring Cloud Stream 234
11.1Spring Cloud Stream 简介 235
11.2常用注解介绍 236
11.3RocketMQ 简介 236
11.4下载、安装和启动 RocketMQ 236
11.5编写 Spring Cloud Stream+RocketMQ 消息生产者代码 237
11.6编写 Spring Cloud Stream+RocketMQ 消息消费者代码 239
11.7验证消息生产和消息消费 241
11.8发送对象消息 242
11.9关于重复消费问题 243
11.10消息过滤 243
11.11异常处理 246
11.12事务消息 247
11.13Spring Cloud Stream 的监控 251
11.14 小结 252
第 12 章 分布式链路追踪——SkyWalking 253
12.1SkyWalking 简介 254
12.2同类产品对比 254
12.3Elasticsearch 简介 255
12.4下载和安装 Elasticsearch 255
12.5下载和安装 SkyWalking 258
12.6IDEA 使用 agent 260
12.7忽略端点 263
12.8 告警 264
12.9性能分析 268
12.10Tomcat 或 Jar 包使用 agent 269
12.11配置账号密码登录 270
12.12 小结 271
第 13 章 分布式任务调度框架——XXL-JOB 272
13.1 原生定时任务的缺陷 273
13.2XXL-JOB 简介 273
13.3下载源码和运行 XXL-JOB 调度中心 274
13.4创建执行器项目 276
13.5使用第一个 GLUE(Java)任务 278
13.6BEAN 模式普通任务 280
13.7执行器集群和 BEAN 模式分片任务 281
13.8调度中心和执行器的集群 283
13.9小结 284
第 14 章 部署项目 285
14.1打包项目 286
14.2命令行部署运行 287
14.3Jenkins 部署运行 287
14.4Docker 部署运行 303
14.5Jenkins+Gitlab+Docker 部署运行 312
14.6小结 315