当前位置:主页 > 计算机电子书 > 行业软件及应用 > 微服务下载
Spring Cloud与Docker微服务架构实战

Spring Cloud与Docker微服务架构实战 PDF 高清版

  • 更新:2019-08-08
  • 大小:100 MB
  • 类别:微服务
  • 作者:周立
  • 出版:子工业出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

Spring Cloud与Docker微服务架构实战 PDF

Spring Cloud与Docker微服务架构实战可分为三部分,第1章对微服务架构进行了系统的介绍;第2-11章使用Spring Cloud开发框架编写了一个“电影售票系统”;第12-14章则讲解了如何将微服务应用运行在Docker之上。全书Demo驱动学习,以连贯的场景、具体的代码示例来引导读者学习相关知识,最终使用特定的技术栈实现微服务架构的落地

这书已全方位升級,提示用户立即采用第2版。做为有部协助大伙儿保持微服务架构落地式的著作,《Spring Cloud与Docker微服务架构实战》遮盖了微服务基础理论、微服务开发设计架构(Spring Cloud)及其运作服务平台(Docker)几大主题风格。全书可分成三一部分,第1章对微服务架构开展了系统软件的详细介绍;第2-12章应用Spring Cloud开发设计架构撰写了1个“影片售票系统”;第12-14章则解读了如何把微服务运用运作在Docker之中。全书Demo驱动器学习培训,以连贯性的情景、实际的编码实例来正确引导用户学习培训有关专业知识,*终应用特殊的技术性栈保持微服务架构的落地式。

目录

  • 1 微服务架构概述 1
  • 1.1 单体应用架构存在的问题1
  • 1.2 如何解决单体应用架构存在的问题3
  • 1.3 什么是微服务3
  • 1.4 微服务架构的优点与挑战5
  • 1.4.1 微服务架构的优点5
  • 1.4.2 微服务架构面临的挑战5
  • 1.5 微服务设计原则6
  • 1.6 如何实现微服务架构7
  • 1.6.1 技术选型7
  • 1.6.2 架构图及常用组件8
  • 2 微服务开发框架——Spring Cloud 10
  • 2.1 Spring Cloud 简介10
  • 2.2 Spring Cloud 特点10
  • 2.3 Spring Cloud 版本11
  • 2.3.1 版本简介11
  • 2.3.2 子项目一览12
  • 2.3.3 Spring Cloud/Spring Boot 版本兼容性13
  • 3 开始使用Spring Cloud 实战微服务 14
  • 3.1 Spring Cloud 实战前提14
  • 3.1.1 技术储备14
  • 3.1.2 工具及软件版本15
  • 3.2 服务提供者与服务消费者16
  • 3.3 编写服务提供者16
  • 3.3.1 手动编写项目17
  • 3.3.2 使用Spring Initializr 快速创建Spring Boot 项目21
  • 3.4 编写服务消费者23
  • 3.5 为项目整合Spring Boot Actuator 25
  • 3.6 硬编码有哪些问题27
  • 4 微服务注册与发现. 29
  • 4.1 服务发现简介29
  • 4.2 Eureka 简介31
  • 4.3 Eureka 原理31
  • 4.4 编写Eureka Server 33
  • 4.5 将微服务注册到Eureka Server 上35
  • 4.6 Eureka Server 的高可用36
  • 4.6.1 将应用注册到Eureka Server 集群上38
  • 4.7 为Eureka Server 添加用户认证39
  • 4.7.1 将微服务注册到需认证的Eureka Server 40
  • 4.8 理解Eureka 的元数据41
  • 4.8.1 改造用户微服务41
  • 4.8.2 改造电影微服务41
  • 4.9 Eureka Server 的REST 端点43
  • 4.9.1 示例45
  • 4.9.2 注销微服务实例49
  • 4.10 Eureka 的自我保护模式51
  • 4.11 多网卡环境下的IP 选择52
  • 4.11.1 忽略指定名称的网卡52
  • 4.11.2 使用正则表达式,指定使用的网络地址52
  • 4.11.3 只使用站点本地地址53
  • 4.11.4 手动指定IP 地址53
  • 4.12 Eureka 的健康检查53
  • 5 使用Ribbon 实现客户端侧负载均衡 56
  • 5.1 Ribbon 简介56
  • 5.2 为服务消费者整合Ribbon 57
  • 5.3 使用Java 代码自定义Ribbon 配置60
  • 5.4 使用属性自定义Ribbon 配置63
  • 5.5 脱离Eureka 使用Ribbon 64
  • 6 使用Feign 实现声明式REST 调用. 66
  • 6.1 Feign 简介67
  • 6.2 为服务消费者整合Feign 67
  • 6.3 自定义Feign 配置69
  • 6.4 手动创建Feign 72
  • 6.4.1 修改用户微服务72
  • 6.4.2 修改电影微服务76
  • 6.5 Feign 对继承的支持78
  • 6.6 Feign 对压缩的支持79
  • 6.7 Feign 的日志80
  • 6.8 使用Feign 构造多参数请求82
  • 6.8.1 GET 请求多参数的URL 82
  • 6.8.2 POST 请求包含多个参数83
  • 7 使用Hystrix 实现微服务的容错处理.  85
  • 7.1 实现容错的手段85
  • 7.1.1 雪崩效应85
  • 7.1.2 如何容错86
  • 7.2 使用Hystrix 实现容错88
  • 7.2.1 Hystrix 简介88
  • 7.2.2 通用方式整合Hystrix 89
  • 7.2.3 Hystrix 断路器的状态监控与深入理解91
  • 7.2.4 Hystrix 线程隔离策略与传播上下文93
  • 7.2.5 Feign 使用Hystrix 96
  • 7.3 Hystrix 的监控101
  • 7.3.1 Feign 项目的Hystrix 监控102
  • 7.4 使用Hystrix Dashboard 可视化监控数据103
  • 7.5 使用Turbine 聚合监控数据105
  • 7.5.1 Turbine 简介105
  • 7.5.2 使用Turbine 监控多个微服务105
  • 7.5.3 使用消息中间件收集数据108
  • 8 使用Zuul 构建微服务网关.. 113
  • 8.1 为什么要使用微服务网关113
  • 8.2 Zuul 简介115
  • 8.3 编写Zuul 微服务网关115
  • 8.4 Zuul 的路由端点118
  • 8.5 Zuul 的路由配置详解119
  • 8.6 Zuul 的安全与Header 122
  • 8.6.1 敏感Header 的设置122
  • 8.6.2 忽略Header 123
  • 8.7 使用Zuul 上传文件124
  • 8.7.1 编写文件上传微服务124
  • 8.8 Zuul 的过滤器127
  • 8.8.1 过滤器类型与请求生命周期127
  • 8.8.2 编写Zuul 过滤器128
  • 8.8.3 禁用Zuul 过滤器130
  • 8.9 Zuul 的容错与回退130
  • 8.9.1 为Zuul 添加回退131
  • 8.10 Zuul 的高可用133
  • 8.10.1 Zuul 客户端也注册到了Eureka Server 上133
  • 8.10.2 Zuul 客户端未注册到Eureka Server 上133
  • 8.11 使用Sidecar 整合非JVM 微服务134
  • 8.11.1 编写Node.js 微服务135
  • 8.11.2 编写Sidecar 136
  • 8.11.3 Sidecar 的端点138
  • 8.11.4 Sidecar 与Node.js 微服务分离部署139
  • 8.11.5 Sidecar 原理分析139
  • 9 使用Spring Cloud Config 统一管理微服务配置 142
  • 9.1 为什么要统一管理微服务配置142
  • 9.2 Spring Cloud Config 简介143
  • 9.3 编写Config Server 144
  • 9.3.1 Config Server 的端点145
  • 9.4 编写Config Client 147
  • 9.5 Config Server 的Git 仓库配置详解149
  • 9.6 Config Server 的健康状况指示器152
  • 9.7 配置内容的加解密153
  • 9.7.1 安装JCE 153
  • 9.7.2 Config Server 的加解密端点153
  • 9.7.3 对称加密153
  • 9.7.4 存储加密的内容154
  • 9.7.5 非对称加密155
  • 9.8 使用/refresh 端点手动刷新配置155
  • 9.9 使用Spring Cloud Bus 自动刷新配置157
  • 9.9.1 Spring Cloud Bus 简介157
  • 9.9.2 实现自动刷新158
  • 9.9.3 局部刷新159
  • 9.9.4 架构改进159
  • 9.9.5 跟踪总线事件160
  • 9.10 Spring Cloud Config 与Eureka 配合使用161
  • 9.11 Spring Cloud Config 的用户认证162
  • 9.11.1 Config Client 连接需用户认证的Config Server 163
  • 9.12 Config Server 的高可用164
  • 9.12.1 Git 仓库的高可用164
  • 9.12.2 RabbitMQ 的高可用164
  • 9.12.3 Config Server 自身的高可用165
  • 10 使用Spring Cloud Sleuth 实现微服务跟踪. 167
  • 10.1 为什么要实现微服务跟踪167
  • 10.2 Spring Cloud Sleuth 简介168
  • 10.3 整合Spring Cloud Sleuth 170
  • 10.4 Spring Cloud Sleuth 与ELK 配合使用172
  • 10.5 Spring Cloud Sleuth 与Zipkin 配合使用176
  • 10.5.1 Zipkin 简介176
  • 10.5.2 编写Zipkin Server 176
  • 10.5.3 微服务整合Zipkin 178
  • 10.5.4 使用消息中间件收集数据181
  • 10.5.5 存储跟踪数据183
  • 11 Spring Cloud 常见问题与总结.. 186
  • 11.1 Eureka 常见问题186
  • 11.1.1 Eureka 注册服务慢186
  • 11.1.2 已停止的微服务节点注销慢或不注销187
  • 11.1.3 如何自定义微服务的Instance ID 188
  • 11.1.4 Eureka 的UNKNOWN 问题总结与解决189
  • 11.2 Hystrix/Feign 整合Hystrix 后首次请求失败190
  • 11.2.1 原因分析191
  • 11.2.2 解决方案191
  • 11.3 Turbine 聚合的数据不完整191
  • 11.3.1 解决方案192
  • 11.4 Spring Cloud 各组件配置属性193
  • 11.4.1 Spring Cloud 的配置193
  • 11.4.2 原生配置193
  • 11.5 Spring Cloud 定位问题思路总结194
  • 12 Docker 入门.  197
  • 12.1 Docker 简介197
  • 12.2 Docker 的架构197
  • 12.3 安装Docker 199
  • 12.3.1 系统要求199
  • 12.3.2 移除非官方软件包199
  • 12.3.3 设置Yum 源199
  • 12.3.4 安装Dokcer 200
  • 12.3.5 卸载Docker 201
  • 12.4 配置镜像加速器201
  • 12.5 Docker 常用命令202
  • 12.5.1 Docker 镜像常用命令202
  • 12.5.2 Docker 容器常用命令204
  • 13 将微服务运行在Docker 上 209
  • 13.1 使用Dockerfile 构建Docker 镜像209
  • 13.1.1 Dockerfile 常用指令210
  • 13.1.2 使用Dockerfile 构建镜像215
  • 13.2 使用Docker Registry 管理Docker 镜像217
  • 13.2.1 使用Docker Hub 管理镜像217
  • 13.2.2 使用私有仓库管理镜像219
  • 13.3 使用Maven 插件构建Docker 镜像220
  • 13.3.1 快速入门221
  • 13.3.2 插件读取Dockerfile 进行构建222
  • 13.3.3 将插件绑定在某个phase 执行223
  • 13.3.4 推送镜像224
  • 13.4 常见问题与总结226
  • 14 使用Docker Compose 编排微服务. 227
  • 14.1 Docker Compose 简介227 .
  • 14.2 安装Docker Compose 227
  • 14.2.1 安装Compose 228
  • 14.2.2 安装Compose 命令补全工具228
  • 14.3 Docker Compose 快速入门229
  • 14.3.1 基本步骤229
  • 14.3.2 入门示例229
  • 14.3.3 工程、服务、容器230
  • 14.4 docker-compose.yml 常用命令230
  • 14.4.1 build 230
  • 14.4.2 command 231
  • 14.4.3 dns 231
  • 14.4.4 dns_search 231
  • 14.4.5 environment 231
  • 14.4.6 env_file 232
  • 14.4.7 expose 232
  • 14.4.8 external_links 232
  • 14.4.9 image 232
  • 14.4.10 links 232
  • 14.4.11 networks 233
  • 14.4.12 network_mode 233
  • 14.4.13 ports 233
  • 14.4.14 volumes 233
  • 14.4.15 volumes_from 234
  • 14.5 docker-compose 常用命令234
  • 14.5.1 build 234
  • 14.5.2 help 235
  • 14.5.3 kill 235
  • 14.5.4 logs 235
  • 14.5.5 port 235
  • 14.5.6 ps 235
  • 14.5.7 pull 235
  • 14.5.8 rm 236
  • 14.5.9 run 236
  • 14.5.10 scale 236
  • 14.5.11 start 236
  • 14.5.12 stop 236
  • 14.5.13 up 236
  • 14.6 Docker Compose 网络设置237
  • 14.6.1 基本概念237
  • 14.6.2 更新容器237
  • 14.6.3 links 238
  • 14.6.4 指定自定义网络238
  • 14.6.5 配置默认网络239
  • 14.6.6 使用已存在的网络239
  • 14.7 综合实战:使用Docker Comose 编排Spring Cloud 微服务240
  • 14.7.1 编排Spring Cloud 微服务240
  • 14.7.2 编排高可用的Eureka Server 243
  • 14.7.3 编排高可用Spring Cloud 微服务集群及动态伸缩245
  • 14.8 常见问题与总结247
  • 后记. 248

资源下载

资源下载地址1:https://pan.baidu.com/s/1MXbm-sXAzPQ9lYSYFI8VfA

相关资源

网友留言