失效链接处理 |
Spring Cloud微服务:(x)入门、实战与q阶 PDF 下蝲
本站整理下蝲Q?/strong>
版权归出版社和原作者所有,链接已删除,误买正?/b>
用户下蝲说明Q?/strong>
?sh)子版仅供预览,下蝲?4时内务必删除,支持正版Q喜Ƣ的误买正版书c:(x)
http://product.dangdang.com/27884997.html
相关截图Q?/strong>
![]() 资料介:(x) q是一部从技术原理、工E实践和q阶提升3个维度讲解Spring Cloud微服务架构与开发的著作?/p> 作者在Spring Cloud微服务领域有丰富的工E实늻验,它将带领读者零基础入门Spring Cloud微服务,q快速掌握动手实践能力,*l进阶ؓ(f)Spring Cloud微服务领域的技术达人?/p> 全书?1章,分ؓ(f)4个部分:(x) *部分准备(W?~2章) 首先对微服务和Spring Cloud的概c优劣势、功能模块等做了整体性的介绍Q然后演CZ如何搭徏Spring Cloud的开发环境,*后对Spring Boot做了详细的介l?/p>
W二部分基础(W?~7章) 对Eureka 注册中心、客L(fng)负蝲均衡 Ribbon、声明式 REST 客户?Feign、Hystrix服务定w处理、API |关{Spring Cloud的重要模块的技术原理、配|、用等做了详尽的讲解?/p> W三部分实战(W?~14章) 对微服务架构中的普遍问题l出了实战解x案,包括选择配置中心、自研发配置中心、分布式跟踪、微服务安全认证、Spring Boot Admin 理微服务、快速生成API 文{实用性内宏V?/p> W四部分高(15-21Q?/strong>
重点讲解了Spring Cloud的扩展性的使用Q比如API|关、微服务的缓存和存储、分布式事务解决Ҏ(gu)、Q务调度、分库分表,以及(qing)大量优秀的生产实늻验等?/p>
赞誉
前言
W一部分 准备?/strong>
W?章 Spring Cloud 与微服务概述 2
1.1 传统的单体应?nbsp; 2
1.1.1 改进单体应用的架?nbsp; 2
1.1.2 向微服务靠拢 3
1.2 什么是微服?nbsp; 4
1.2.1 使用微服务架构的优势和劣?nbsp; 4
1.2.2 重构前的准备工作 5
1.3 什么是Spring Cloud 5
1.3.1 Spring Cloud模块介绍 6
1.3.2 Spring Cloud版本介绍 6
1.4 本章结 7
W?章 实战前的准备工作 8
2.1 开发环境的准备 8
2.2 Spring Boot入门 9
2.2.1 Spring Boot?nbsp; 9
2.2.2 搭徏Spring Boot目 9
2.2.3 ~写W一个REST接口 11
2.2.4 d配置文g 11
2.2.5 profiles多环境配|?nbsp; 13
2.2.6 热部|?nbsp; 13
2.2.7 actuator监控 15
2.2.8 自定义actuator端点 17
2.2.9 l一异常处理 18
2.2.10 异步执行 20
2.2.11 随机端口 22
2.2.12 ~译打包 24
2.3 Spring Boot Starter自定?nbsp; 25
2.3.1 Spring Boot Starter目创徏 25
2.3.2 自动创徏客户?nbsp; 26
2.3.3 使用Starter 27
2.3.4 使用注解开启Starter自动构徏 27
2.3.5 使用配置开启Starter自动构徏 28
2.3.6 配置Starter内容提示 29
2.4 本章结 29
W二部分 基础?/strong>
W?章 Eureka 注册中心 32
3.1 Eureka 32
3.2 使用 Eureka ~写注册中心服务 33
3.3 ~写服务提供?nbsp; 35
3.3.1 创徏目注册到Eureka 35
3.3.2 ~写提供接口 36
3.4 ~写服务消费?nbsp; 37
3.4.1 直接调用接口 37
3.4.2 通过Eureka来消Ҏ(gu)?nbsp; 38
3.5 开?Eureka 认证 38
3.6 Eureka 高可用搭?nbsp; 39
3.6.1 高可用原?nbsp; 39
3.6.2 搭徏步骤 40
3.7 常用配置讲解 41
3.7.1 关闭自我保护 41
3.7.2 自定义Eureka?/strong>
InstanceID 41
3.7.3 自定义实例蟩转链?nbsp; 42
3.7.4 快速移除已l失效的服务信息 43
3.8 扩展使用 44
3.8.1 Eureka REST API 44
3.8.2 元数据?nbsp; 46
3.8.3 EurekaClient使用 47
3.8.4 健康?nbsp; 49
3.8.5 服务上下U监?nbsp; 50
3.9 本章结 51
W?章 客户端负载均?Ribbon 52
4.1 Ribbon 52
4.1.1 Ribbon模块 52
4.1.2 Ribbon 使用 53
4.2 RestTemplatel合 Ribbon 使用 54
4.2.1 使用RestTemplate与整?Ribbon 54
4.2.2 RestTemplate负蝲均衡CZ 57
4.2.3 @LoadBalanced注解原理 58
4.2.4 Ribbon API 使用 62
4.2.5 Ribbon 饥饿加蝲 63
4.3 负蝲均衡{略介绍 64
4.4 自定义负载策?nbsp; 65
4.5 配置详解 66
4.5.1 常用配置 66
4.5.2 代码配置 Ribbon 67
4.5.3 配置文g方式配置Ribbon 67
4.6 重试机制 68
4.7 本章结 69
W?章 声明式REST客户端Feign 70
5.1 使用 Feign 调用服务接口 70
5.1.1 在Spring Cloud中集成Feign 71
5.1.2 使用Feign调用接口 71
5.2 自定?Feign的配|?nbsp; 72
5.2.1 日志配置 72
5.2.2 契约配置 73
5.2.3 Basic认证配置 74
5.2.4 时旉配置 75
5.2.5 客户端组仉|?nbsp; 75
5.2.6 GZIP压羃配置 76
5.2.7 ~码器解码器配置 77
5.2.8 使用配置自定义Feign的配|?nbsp; 78
5.2.9 l承Ҏ(gu)?nbsp; 78
5.2.10 多参数请求构?nbsp; 80
5.3 q Spring Cloud 使用 Feign 80
5.3.1 原生注解方式 81
5.3.2 构徏Feign对象 82
5.3.3 其他配置 83
5.4 本章结 83
W?章 Hystrix服务定w处理 84
6.1 Hystrix 84
6.1.1 Hystrix的简单?nbsp; 84
6.1.2 回退支持 85
6.1.3 信号量策略配|?nbsp; 86
6.1.4 U程隔离{略配置 86
6.1.5 l果~存 87
6.1.6 ~存清除 88
6.1.7 合ƈh 89
6.2 ?Spring Cloud 中用Hystrix 91
6.2.1 单?nbsp; 91
6.2.2 配置详解 92
6.2.3 Feign整合Hystrix服务定w 95
6.2.4 Feign中禁用Hystrix 97
6.3 Hystrix监控 97
6.4 整合 Dashboard 查看监控数据 98
6.5 Turbine 聚合集群数据 100
6.5.1 Turbine使用 100
6.5.2 context-pathD监控p| 101
6.6 本章结 102
W?章 API|关 103
7.1 Zuul?nbsp; 103
7.2 使用Zuul构徏微服务网?nbsp; 104
7.2.1 单?nbsp; 104
7.2.2 集成Eureka 105
7.3 Zuul路由配置 105
7.4 Zuulqo(h)器讲?nbsp; 106
7.4.1 qo(h)器类?nbsp; 106
7.4.2 h生命周期 107
7.4.3 使用qo(h)?nbsp; 108
7.4.4 qo(h)器禁?nbsp; 109
7.4.5 qo(h)器中传递数?nbsp; 110
7.4.6 qo(h)器拦截请?nbsp; 111
7.4.7 qo(h)器中异常处理 113
7.5 Zuul定w和回退 115
7.5.1 定w机制 115
7.5.2 回退机制 116
7.6 Zuul使用经?nbsp; 118
7.6.1 /routes 端点 118
7.6.2 /filters 端点 118
7.6.3 文g上传 119
7.6.4 h响应信息输出 121
7.6.5 Zuul自带的Debug功能 124
7.7 Zuul高可?nbsp; 126
7.8 本章结 127
W三部分 实战?/strong>
W?章 API |关之Spring Cloud Gateway 130
8.1 Spring Cloud Gateway介绍 130
8.2 Spring Cloud Gateway工作原理 131
8.3 Spring Cloud Gateway快速上?nbsp; 131
8.3.1 创徏Gateway目 131
8.3.2 路由转发CZ 132
8.3.3 整合Eureka路由 133
8.3.4 整合Eureka的默认\?nbsp; 133
8.4 Spring Cloud Gateway路由断言工厂 134
8.4.1 路由断言工厂使用 134
8.4.2 自定义\由断a工厂 136
8.5 Spring Cloud Gatewayqo(h)器工?nbsp; 137
8.5.1 Spring Cloud Gatewayqo(h)器工厂?nbsp; 137
8.5.2 自定义Spring Cloud Gatewayqo(h)器工?nbsp; 138
8.6 全局qo(h)?nbsp; 140
8.7 实战案例 143
8.7.1 限流实战 143
8.7.2 熔断回退实战 145
8.7.3 跨域实战 145
8.7.4 l一异常处理 147
8.7.5 重试机制 150
8.8 本章结 151
W?章 自研分布式配|管?nbsp; 152
9.1 自研配置理框架Smconf?nbsp; 152
9.2 Smconf工作原理 153
9.3 Smconf部v 154
9.3.1 Mongodb安装 154
9.3.2 Zookeeper 安装 155
9.3.3 Smconf Server 部v 156
9.4 目中集成Smconf 157
9.4.1 集成Smconf 157
9.4.2 使用Smconf 158
9.4.3 配置更新回调 159
9.5 Smconf详细使用 160
9.5.1 源码~译问题 160
9.5.2 后台账号理 160
9.5.3 REST API 161
9.6 Smconf源码解析 163
9.6.1 Client启动 163
9.6.2 启动加蝲配置 165
9.6.3 配置修改推送原?nbsp; 166
9.7 本章结 167
W?0章 分布式配|中心Apollo 168
10.1 Apollo?nbsp; 168
10.2 Apollo的核心功能点 168
10.3 Apollo核心概念 170
10.4 Apollo本地部v 171
10.5 Apollo Portal理后台使用 172
10.6 Java中用Apollo 174
10.6.1 普通Java目中?nbsp; 174
10.6.2 Spring Boot中?nbsp; 177
10.7 Apollo的架构设?nbsp; 179
10.7.1 Apollo架构设计介绍 179
10.7.2 Apollo服务端设?nbsp; 181
10.7.3 Apollo客户端设?nbsp; 188
10.7.4 Apollo高可用设?nbsp; 195
10.8 本章结 196
W?1章 Sleuth 服务跟踪 197
11.1 Spring Cloud 集成 Sleuth 197
11.2 整合 Logstash 198
11.2.1 ELK ?nbsp; 198
11.2.2 输出 JSON 格式日志 198
11.3 整合Zipkin 200
11.3.1 Zipkin数据攉服务 200
11.3.2 目集成Zipkin发送调用链数据 201
11.3.3 抽样采集数据 203
11.3.4 异步dU程池定?nbsp; 203
11.3.5 TracingFilter 204
11.3.6 监控本地Ҏ(gu) 205
11.3.7 qo(h)不想跟踪的请?nbsp; 206
11.3.8 用RabbitMq代替 Http 发送调用链数据 206
11.3.9 ?Elasticsearch 存储调用链数?nbsp; 207
11.4 本章结 208
W?2章 微服务之间调用的安全认证 209
12.1 什么是 JWT 209
12.2 创徏l一的认证服?nbsp; 210
12.2.1 表结?nbsp; 210
12.2.2 JWT工具cd?nbsp; 210
12.2.3 认证接口 212
12.3 服务提供方进行调用认?nbsp; 212
12.4 服务消费方申?Token 214
12.5 Feign 调用前统一甌 Token 传递到调用的服务中 216
12.6 RestTemplate调用前统一甌 Token 传递到调用的服务中 217
12.7 Zuul中传?Token 到\q服务?nbsp; 218
12.8 本章结 219
W?3章 Spring Boot Admin 220
13.1 Spring Boot Admin 的用方?nbsp; 220
13.1.1 创徏 Spring Boot Admin目 220
13.1.2 服务注册到 Spring Boot Admin 221
13.1.3 监控内容介绍 223
13.1.4 如何?Admin 中查看各个服务的日志 225
13.2 开启认?nbsp; 226
13.3 集成 Eureka 227
13.4 监控服务 228
13.4.1 邮g警报 228
13.4.2 自定义钉钉警?nbsp; 229
13.5 本章结 232
W?4章 服务的API文理 233
14.1 Swagger ?nbsp; 233
14.2 集成 Swagger 理 API 文档 234
14.2.1 目中集?Swagger 234
14.2.2 使用 Swagger 生成文 234
14.2.3 在线试接口 235
14.3 Swagger 注解 236
14.4 Eureka 控制台快速查?Swagger 文档 240
14.5 h认证 240
14.6 Zuul中聚合多个服务Swagger 241
14.7 本章结 242
W四部分 高?/strong>
W?5章 API |关扩展 244
15.1 用户认证 244
15.1.1 动态管理不需要拦截的 API h 244
15.1.2 创徏认证的用h?nbsp; 246
15.1.3 路由之前的认?nbsp; 247
15.1.4 向下游微服务中传递认证之后的用户信息 248
15.1.5 内部服务间的用户信息传?nbsp; 248
15.2 服务限流 250
15.2.1 限流法 250
15.2.2 单节炚w?nbsp; 251
15.2.3 集群限流 255
15.2.4 具体服务限流 258
15.2.5 具体接口限流 258
15.3 服务降 262
15.4 灰度发布 264
15.4.1 原理讲解 264
15.4.2 Ҏ(gu)用户做灰度发?nbsp; 265
15.4.3 Ҏ(gu) IP 做灰度发?nbsp; 268
15.5 本章结 268
W?6章 微服务之~存 269
16.1 Guava Cache 本地~存 269
16.1.1 Guava Cache ?nbsp; 269
16.1.2 代码CZ 270
16.1.3 回收{略 270
16.2 Redis ~存 271
16.2.1 用Redistemplate操作 Redis 271
16.2.2 ?Repository 操作 Redis 272
16.2.3 Spring Cache ~存数据 274
16.2.4 ~存异常处理 278
16.2.5 自定义缓存工L(fng) 279
16.3 防止~存IK方?nbsp; 282
16.3.1 什么是~存IK?nbsp; 282
16.3.2 ~存IK的危害 282
16.3.3 解决Ҏ(gu) 282
16.3.4 布隆qo(h)器介l?nbsp; 283
16.3.5 代码CZ 283
16.4 防止~存雪崩Ҏ(gu) 284
16.4.1 什么是~存雪崩 284
16.4.2 ~存雪崩的危?nbsp; 284
16.4.3 解决Ҏ(gu) 284
16.4.4 代码CZ 285
16.4.5 分布式锁方式 285
16.5 本章结 286
W?7章 微服务之存储 287
17.1 存储选型 287
17.2 Mongodb 288
17.2.1 集成 Spring Data Mongodb 288
17.2.2 d数据操作 288
17.2.3 索引使用 290
17.2.4 修改数据操作 291
17.2.5 删除数据操作 293
17.2.6 查询数据操作 294
17.2.7 GridFS操作 295
17.2.8 ?Repository方式操作数据 296
17.2.9 自增 ID 实现 300
17.2.10 扚w更新扩展 303
17.3 Mysql 304
17.3.1 集成 Spring Jdbc-Template 304
17.3.2 JdbcTemplate代码CZ 305
17.3.3 装JdbcTemplate操作Mysql更简?nbsp; 305
17.3.4 扩展JdbcTemplate使用方式 306
17.3.5 常见问题 310
17.4 Elasticsearch 312
17.4.1 集成 Spring Data Elasticsearch 312
17.4.2 Repository CZ 312
17.4.3 ElasticsearchTemplateCZ 315
17.4.4 索引构徏方式 318
17.5 本章结 319
W?8章 微服务之分布式事务解x?nbsp; 320
18.1 两阶D型 320
18.2 TCC 补偿?nbsp; 321
18.3 最l一致?nbsp; 321
18.3.1 原理讲解 321
18.3.2 创徏可靠性消息服?nbsp; 323
18.3.3 消息存储表设?nbsp; 324
18.3.4 提供服务接口 325
18.3.5 创徏消息发送系l?nbsp; 329
18.3.6 消费消息逻辑 332
18.3.7 消息理pȝ 335
18.4 最大努力通知型事?nbsp; 335
18.5 本章结 335
W?9章 分布式Q务调?nbsp; 336
19.1 Elastic-Job 336
19.1.1 Elastic-Job 介绍 336
19.1.2 d调度目前存在的问?nbsp; 336
19.1.3 Z么选择 Elastic-Job 337
19.2 快速集?nbsp; 338
19.3 d使用 339
19.3.1 单Q?nbsp; 339
19.3.2 数据Q?nbsp; 340
19.3.3 脚本d 340
19.4 配置参数讲解 341
19.4.1 注册中心配置 341
19.4.2 作业配置 342
19.4.3 dataflow 独有配置 343
19.4.4 script独有配置 343
19.5 多节点ƈ行调?nbsp; 344
19.5.1 分片概念 344
19.5.2 d节点分片{略 344
19.5.3 业务数据分片处理 345
19.6 事gq踪 347
19.7 扩展功能 349
19.7.1 自定义监听器 349
19.7.2 定义异常处理 349
19.8 q维q_ 350
19.8.1 功能列表 350
19.8.2 部vq维q_ 351
19.8.3 q维q_使用 351
19.9 使用l验分n 355
19.9.1 d的划分和监控 355
19.9.2 d的扩展性和节点数量 355
19.9.3 d的重复执?nbsp; 355
19.9.4 overwrite 覆盖问题 356
19.9.5 水式Q?nbsp; 356
19.10 本章结 357
W?0章 分库分表解决Ҏ(gu) 358
20.1 Sharding-JDBC 358
20.1.1 介绍 358
20.1.2 功能列表 359
20.1.3 相关概念 359
20.2 快速集?nbsp; 360
20.3 d分离实战 362
20.3.1 准备数据 362
20.3.2 配置d分离 363
20.3.3 验证M?nbsp; 363
20.3.4 验证写主?nbsp; 365
20.3.5 Hint 强制路由d 366
20.4 分库分表实战 367
20.4.1 常用分片法 367
20.4.2 使用分片法 368
20.4.3 不分库只分表实战 368
20.4.4 既分库又分表实战 372
20.5 分布式主?nbsp; 375
20.6 本章结 377
W?1章 最佳生产实늻?nbsp; 378
21.1 开发环境和试环境qEureka 378
21.2 Swagger和Actuator讉Kq行权限控制 379
21.3 Spring Boot Admin监控被保护的服务 380
21.4 Apollo配置中心化版搭徏分n 380
21.5 Apollo使用经?nbsp; 382
21.5.1 公共配置 382
21.5.2 账号权限 383
21.5.3 环境配置和项目配|?nbsp; 385
21.6 Apollo动态调整日志?nbsp; 385
21.7 Apollo存储加密 387
21.8 扩展Apollo支持存储加解?nbsp; 390
21.9 Apollol合Zuul实现动态\?nbsp; 391
21.10 Apollo整合Archaius 393
21.11 Elastic-Job的Spring-Boot-Starter装 394
21.12 Spring Boot中Mongodb多数据源装 396
21.13 Zuul中对APIq行加解?nbsp; 398
21.14 本章结 400 |