::资源简介::
Spring微服务实战,1
内容提要,4
译者序,6
前言,8
目录,19
第01章 欢迎迈入云世界,23
1_1 什么是微服务,23
1_2 什么是Spring/为什么它与微服务有关,26
1_3 在本书中读者会学到什么,27
1_4 为什么本书与你有关,28
1_5 使用Spring_Boot来构建微服务,28
1_6 为什么要改变构建应用的方式,32
1_7 云到底是什么,33
1_8 为什么是云和微服务,35
1_9 微服务不只是编写代码,36
1_9_1 核心微服务开发模式,37
1_9_2 微服务路由模式,38
1_9_3 微服务客户端弹性模式,39
1_9_4 微服务安全模式,40
1_9_5 微服务日志记录和跟踪模式,41
1_9_6 微服务构建和部署模式,42
1_10 使用Spring_Cloud构建微服务,44
1_10_1 Spring_Boot,45
1_10_2 Spring_Cloud Config,45
1_10_3 Spring_Cloud服务发现,46
1_10_4 Spring_Cloud与Netflix_Hystrix和Netflix_Ribbon,46
1_10_5 Spring_Cloud与Netflix_Zuul,46
1_10_6 Spring_Cloud_Stream,46
1_10_7 Spring_Cloud_Sleuth,46
1_10_8 Spring_Cloud_Security,47
1_10_9 代码供应,47
1_11 通过示例来介绍Spring_Cloud,47
1_12 确保本书的示例是有意义的,49
1_13 小结,50
第02章 使用Spring Boot构建微服务,51
2_1 架构师的故事:设计微服务架构,53
2_1_1 分解业务问题,53
2_1_2 建立服务粒度,54
2_1_3 互相交流:定义服务接口,57
2_2 何时不应该使用微服务,58
2_2_1 构建分布式系统的复杂性,58
2_2_2 服务器散乱,58
2_2_3 应用程序的类型,58
2_2_4 数据事务和一致性,59
2_3 开发人员的故事:用SpringBoot和Java构建微服务,59
2_3_1 从骨架项目开始,59
2_3_2 引导Spring_Boot应用程序:编写引导类,61
2_3_3 构建微服务的入口:Spring_Boot控制器,62
2_4 DevOps工程师的故事:构建运行时的严谨性,66
2_4_1 服务装配:打包和部署微服务,68
2_4_2 服务引导:管理微服务的配置,69
2_4_3 服务注册和发现:客户端如何与微服务通信,70
2_4_4 传达微服务的健康状况,71
2_5 将视角综合起来,73
2_6 小结,74
第03章 使用Spring_Cloud配置服务器控制配置,75
3_1 管理配置[和复杂性],76
3_1_1 配置管理架构,77
3_1_2 实施选择,78
3_2 构建Spring_Cloud配置服务器,80
3_2_1 创建Spring_Cloud_Config引导类,83
3_2_2 使用带有文件系统的Spring_Cloud配置服务器,84
3_3 将Spring_Cloud Config与Spring Boot客户端集成,86
3_3_1 建立许可证服务对Spring_Cloud Config服务器的依赖,87
3_3_2 配置许可证服务以使用Spring_Cloud_Config,88
3_3_3 使用Spring_Cloud配置服务器连接数据源,91
3_3_4 使用@Value注解直接读取属性,94
3_3_5 使用Spring_Cloud配置服务器和Git,95
3_3_6 使用Spring_Cloud配置服务器刷新属性,95
3_4 保护敏感的配置信息,97
3_4_1 下载并安装加密所需的Oracle_JCE.jar,97
3_4_2 创建加密密钥,98
3_4_3 加密和解密属性,98
3_4_4 配置微服务以在客户端使用加密,100
3_5 最后的想法,101
3_6 小结,102
第04章 服务发现,103
4_1 我的服务在哪里,104
4_2 云中的服务发现,106
4_2_1 服务发现架构,106
4_2_2 使用Spring和Netflix Eureka进行服务发现实战,109
4_3 构建Spring_Eureka服务,110
4_4 通过Spring_Eureka注册服务,112
4_5 使用服务发现来查找服务,31
4_5_1 使用Spring DiscoveryClient查找服务实例,117
4_5_2 使用带有Ribbon功能的Spring RestTemplate调用服务,119
4_5_3 使用Netflix_Feign客户端调用服务,120
4_6 小结,122
第05章 使用Spring_Cloud和NetflixHystrix的客户端弹性模式,123
5_1 什么是客户端弹性模式,124
5_1_1 客户端负载均衡模式,125
5_1_2 断路器模式,125
5_1_3 后备模式,125
5_1_4 舱壁模式,126
5_2 为什么客户端弹性很重要,126
5_3 进入Hystrix,129
5_4 搭建许可服务器以使用Spring_Cloud和Hystrix,129
5_5 使用Hystrix实现断路器,131
5_5_1 对组织微服务的调用超时,133
5_5_2 定制断路器的超时时间,134
5_6 后备处理,135
5_7 实现舱壁模式,137
5_8 基础进阶—微调Hystrix,140
5_9 线程上下文和Hystrix,144
5_9_1 ThreadLocal与Hystrix,144
5_9_2 HystrixConcurrencyStrategy实战,147
5_10 小结,151
第06章 使用Spring_Cloud和Zuul进行服务路由,153
6_1 什么是服务网关,154
6_2 Spring_Cloud和Netflix_Zuul简介,155
6_2_1 建立一个Zuul_Spring_Boot项目,156
6_2_2 为Zuul服务使用Spring_Cloud注解,156
6_2_3 配置Zuul与Eureka进行通信,157
6_3 在Zuul中配置路由,157
6_3_1 通过服务发现自动映射路由,158
6_3_2 使用服务发现手动映射路由,159
6_3_3 使用静态URL手动映射路由,162
6_3_4 动态重新加载路由配置,164
6_3_5 Zuul和服务超时,165
6_4 Zuul的真正威力:过滤器,166
6_5 构建第一个生成关联ID的Zuul前置过滤器,169
6_6 构建接收关联ID的后置过滤器,177
6_7 构建动态路由过滤器,179
6_7_1 构建路由过滤器的骨架,181
6_7_2 实现run()方法,181
6_7_3 转发路由,183
6_7_4 整合,184
6_8 小结,185
第07章 保护微服务,186
7_1 OAuth2简介,187
7_2 从小事做起:使用Spring和OAuth2来保护单个端点,189
7_2_1 建立EagleEye_OAuth2验证服务,189
7_2_2 使用OAuth2服务注册客户端应用程序,190
7_2_3 配置EagleEye用户,193
7_2_4 验证用户,194
7_3 使用OAuth2保护组织服务,197
7_3_1 将Spring_Security和OAuth2.jar添加到各个服务,198
7_3_2 配置服务以指向OAuth2验证服务,198
7_3_3 定义谁可以访问服务,199
7_3_4 传播OAuth2访问令牌,202
7_4 JSON_Web_Token与OAuth2,205
7_4_1 修改验证服务以颁发JWT令牌,206
7_4_2 在微服务中使用JWT,210
7_4_3 扩展JWT令牌,211
7_4_4 从JWT令牌中解析自定义字段,213
7_5 关于微服务安全的总结,215
7_6 小结,217
第08章 使用Spring_Cloud_Stream的事件驱动架构,218
8_1 为什么使用消息传递/EDA和微服务,219
8_1_1 使用同步请求/响应方式来传达状态变化,220
8_1_2 使用消息传递在服务之间传达状态更改,221
8_1_3 消息传递架构的缺点,223
8_2 Spring_Cloud_Stream简介,224
8_3 编写简单的消息生产者和消费者,227
8_3_1 在组织服务中编写消息生产者,227
8_3_2 在许可证服务中编写消息消费者,232
8_3_3 在实际操作中查看消息服务,235
8_4 Spring_Cloud Stream用例:分布式缓存,236
8_4_1 使用Redis来缓存查找,237
8_4_2 定义自定义通道,243
8_4_3 将其全部汇集在一起:在收到消息时清除缓存,244
8_5 小结,245
第09章 使用Spring_Cloud_Sleuth和Zipkin进行分布式跟踪,246
9_1 Spring_Cloud_Sleuth与关联ID,247
9_1_1 将Spring_Cloud_Sleuth添加到许可证服务和组织服务中,248
9_1_2 剖析Spring_Cloud_Sleuth跟踪,248
9_2 日志聚合与Spring_Cloud_Sleuth,249
9_2_1 Spring_Cloud_Sleuth与Papertrail实现实战,251
9_2_2 创建Papertrail账户并配置syslog连接器,252
9_2_3 将Docker输出重定向到Papertrail,254
9_2_4 在Papertrail中搜索Spring_Cloud_Sleuth的跟踪ID,256
9_2_5 使用Zuul将关联ID添加到HTTP响应,257
9_3 使用Open_Zipkin进行分布式跟踪,259
9_3_1 添加Spring_Cloud_Sleuth和Zipkin依赖项,260
9_3_2 配置服务以指向Zipkin,260
9_3_3 安装和配置Zipkin服务器,261
9_3_4 设置跟踪级别,262
9_3_5 使用Zipkin跟踪事务,263
9_3_6 可视化更复杂的事务,265
9_3_7 捕获消息传递跟踪,266
9_3_8 添加自定义跨度,268
9_4 小结,270
第10章 部署微服务,272
10_1 EagleEye:在云中建立核心基础设施,273
10_1_1 使用亚马逊的RDS创建PostgreSQL数据库,275
10_1_2 在AWS中创建Redis集群,279
10_1_3 创建ECS集群,280
10_2 超越基础设施:部署EagleEye,284
10_3 构建和部署管道的架构,287
10_4 构建和部署管道实战,290
10_5 开始构建和部署管道:GitHub和Travis_CI,292
10_6 使服务能够在Travis_CI中构建,292
10_6_1 构建的核心运行时配置,295
10_6_2 安装预构建工具,297
10_6_3 执行构建,299
10_6_4 标记源代码,299
10_6_5 构建微服务并创建Docker镜像,301
10_6_6 将镜像推送到Docker_Hub,301
10_6_7 在Amazon_ECS中启动服务,302
10_6_8 启动平台测试,302
10_7 关于构建和部署管道的总结,304
10_8 小结,304
附录A 在桌面运行云服务,305
附录B OAuth2授权类型,313
::下载地址::
>> 评论