疯狂SpringCloud微服务架构实战杨恩雄pdf下载pdf下载

疯狂SpringCloud微服务架构实战杨恩雄百度网盘pdf下载

作者:
简介:本篇主要提供疯狂SpringCloud微服务架构实战杨恩雄pdf下载
出版社:
出版时间:2017-12-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

基本信息

书名:疯狂Spring Cloud微服务架构实战

定价:58.00元

作者:杨恩雄

出版社:电子工业出版社

出版日期:2017-12-01

ISBN:9787121331091

字数:

页码:

版次:1

装帧:平装-胶订

开本:16开

商品重量:0.4kg

编辑推荐


开源中国创始人@红薯、Spring Cloud创始人许进、YY欢聚时代技术经理钟永生联合背书;

扫图书封面二维码可获得图书配套的讲解视频

作者亲自在线的、微信不定期答疑服务

疯狂体系图书的又一力作

内容提要


《疯狂Spring Cloud微服务架构实战》以Spring Cloud为基础,深入讲解微服务开发的相关框架,包括服务管理框架Eureka、负载均衡框架Ribbon、服务客户端Feign、容错框架Hystrix、消息框架Stream等。除了介绍这些微服务相关的框架外,在本书的1章,还介绍了如何使用Spring Data框架作各个主流数据库(MySQL、MongoDB、Redis)。在2章,以一个案例为基础结束本书内容,在该章中讲解了模板引擎Thymeleaf,整本书将会为大家提供一整套微服务应用开发的解决方案。本书适合有Java开发基础的技术人员,尤其是正在使用或准备使用微服务构建高并发、大数据应用的技术人员及团队。

目录


章 Spring Cloud概述1
1.1 传统的应用2
1.1.1 单体应用2
1.1.2 架构演进3
1.1.3 架构要求4
1.2 微服务与Spring Cloud5
1.2.1 什么是微服务5
1.2.2 关于Netflix OSS6
1.2.3 Spring Cloud与Netflix6
1.2.4 Spring Cloud的主要模块6
1.3 学习方面的准备工作7
1.3.1 下载本书的软件及源码7
1.3.2 导入本书的案例7
1.4 本章小结8
2章 搭建开发环境9
2.1 安装与配置Maven10
2.1.1 关于Maven10
2.1.2 下载与安装Maven11
2.1.3 配置远程仓库11
2.2 安装Eclipse12
2.2.1 Eclipse版本12
2.2.2 在Eclipse中配置Maven12
2.3 Spring Boot13
2.3.1 Spring Boot简介13
2.3.2 新建Maven项目14
2.3.3 编写启动类15
2.3.4 编写控制器16
2.3.5 发布REST WebService17
2.4 Spring Boot配置文件18
2.4.1 默认配置文件18
2.4.2 指定配置文件位置19
2.4.3 yml文件19
2.4.4 运行时指定profiles配置20
2.4.5 热部署20
2.5 Spring Cloud的版本21
2.6 本章小结21
3章 微服务发布与调用22
3.1 Eureka介绍23
3.1.1 关于Eureka23
3.1.2 Eureka架构23
3.1.3 服务器端24
3.1.4 服务提供者24
3.1.5 服务调用者24
3.2 个Eureka应用24
3.2.1 构建服务器24
3.2.2 服务器注册开关27
3.2.3 编写服务提供者27
3.2.4 编写服务调用者29
3.2.5 程序结构32
3.3 Eureka集搭建33
3.3.1 本例集结构图33
3.3.2 改造服务器端34
3.3.3 改造服务提供者35
3.3.4 改造服务调用者37
3.3.5 编写REST客户端进行测试37
3.4 服务实例的健康自检38
3.4.1 程序结构39
3.4.2 使用Spring Boot Actuator39
3.4.3 实现应用健康自检39
3.4.4 服务查询42
3.5 Eureka的常用配置44
3.5.1 心跳检测配置44
3.5.2 注册表抓取间隔44
3.5.3 配置与使用元数据45
3.5.4 自我保护模式45
3.6 本章小结46
4章 负载均衡47
4.1 Ribbon介绍48
4.1.1 Ribbon简介48
4.1.2 Ribbon子模块48
4.1.3 负载均衡器组件48
4.2 个Ribbon程序49
4.2.1 编写服务49
4.2.2 编写请求客户端51
4.2.3 Ribbon的配置52
4.3 Ribbon的负载均衡机制53
4.3.1 负载均衡器53
4.3.2 自定义负载规则54
4.3.3 Ribbon自带的负载规则56
4.3.4 Ping机制57
4.3.5 自定义Ping59
4.3.6 其他配置59
4.4 在Spring Cloud中使用Ribbon60
4.4.1 准备工作60
4.4.2 使用代码配置Ribbon61
4.4.3 使用配置文件设置Ribbon63
4.4.4 Spring使用Ribbon的API64
4.5 RestTemplate负载均衡66
4.5.1 @LoadBalanced注解概述66
4.5.2 编写自定义注解以及拦截器66
4.5.3 使用自定义拦截器以及注解68
4.5.4 在控制器中使用RestTemplate69
4.6 本章小结71
5章 REST客户端Feign72
5.1 REST客户端73
5.1.1 使用CXF调用REST服务73
5.1.2 使用Restlet调用REST服务74
5.1.3 Feign框架介绍75
5.1.4 个Feign程序76
5.1.5 请求参数与返回对象77
5.2 使用Feign78
5.2.1 编码器79
5.2.2 解码器80
5.2.3 XML的编码与解码80
5.2.4 自定义编码器与解码器83
5.2.5 自定义Feign客户端83
5.2.6 使用三方注解85
5.2.7 Feign解析三方注解86
5.2.8 请求拦截器89
5.2.9 接日志89
5.3 在Spring Cloud中使用Feign90
5.3.1 Spring Cloud整合Feign91
5.3.2 Feign负载均衡93
5.3.3 默认配置93
5.3.4 自定义配置94
5.3.5 可选配置97
5.3.6 压缩配置98
5.4 本章小结98
6章 Spring Cloud的保护机制99
6.1 概述100
6.1.1 实际问题100
6.1.2 传统的解决方式101
6.1.3 集容错框架Hystrix101
6.1.4 Hystrix的功能102
6.2 个Hystrix程序103
6.2.1 准备工作103
6.2.2 客户端使用Hystrix103
6.2.3 调用错误服务105
6.2.4 Hystrix的运作流程106
6.3 Hystrix的使用108
6.3.1 命令执行108
6.3.2 属性配置110
6.3.3 回退111
6.3.4 回退的模式112
6.3.5 断路器开启113
6.3.6 断路器关闭116
6.3.7 隔离机制118
6.3.8 合并请求121
6.3.9 请求缓存125
6.4 在Spring Cloud中使用Hystrix127
6.4.1 整合Hystrix128
6.4.2 命令配置130
6.4.3 默认配置131
6.4.4 缓存注解132
6.4.5 合并请求注解134
6.4.6 Feign与Hystrix整合136
6.4.7 Hystrix监控140
6.5 本章小结142
7章 微服务集网关143
7.1 Zuul框架介绍144
7.1.1 关于Zuul144
7.1.2 Zuul的功能144
7.2 在Web项目中使用Zuul145
7.2.1 Web项目整合Zuul145
7.2.2 测试路由功能145
7.2.3 过滤器运行机制147
7.3 在微服务集中初试Zuul148
7.3.1 集搭建149
7.3.2 路由到集服务150
7.3.3 Zuul Http客户端153
7.4 路由配置153
7.4.1 简单路由154
7.4.2 跳转路由155
7.4.3 Ribbon路由155
7.4.4 自定义路由规则156
7.4.5 忽略路由157
7.5 Zuul的其他配置157
7.5.1 请求头配置157
7.5.2 路由端点158
7.5.3 Zuul与Hystrix158
7.5.4 在Zuul中预加载Ribbon161
7.6 Zuul功能进阶161
7.6.1 过滤器优先级161
7.6.2 自定义过滤器162
7.6.3 动态加载过滤器163
7.6.4 禁用过滤器165
7.6.5 请求上下文166
7.6.6 @EnableZuulServer注解168
7.6.7 error过滤器169
7.6.8 动态路由171
7.7 本章小结172
8章 微服务与消息驱动173
8.1 Spring Cloud Stream介绍174
8.1.1 关于Stream框架174
8.1.2 Stream框架的组成部分174
8.1.3 消息代理中间件174
8.2 RabbitMQ框架175
8.2.1 RabbitMQ和AMQP175
8.2.2 下载与运行176
8.2.3 编写生产者177
8.2.4 编写消费者179
8.2.5 交换器、绑定与队列180
8.3 Apache Kafka框架181
8.3.1 关于Kafka181
8.3.2 运行Kafka服务器182
8.3.3 编写生产者182
8.3.4 编写消费者184
8.3.5 消费者组185
8.4 开发消息微服务185
8.4.1 准备工作186
8.4.2 编写生产者187
8.4.3 编写消费者188
8.4.4 更换绑定器189
8.4.5 Sink、Source与Processor190
8.4.6 消费者组191
8.5 本章小结192
9章 集配置中心193
9.1 概述194
9.1.1 关于Spring Cloud Config194
9.1.2 应用结构195
9.1.3 引导程序简介195
9.1.4 搭建SVN环境196
9.2 构建个例子196
9.2.1 创建服务器196
9.2.2 配置SVN仓库197
9.2.3 创建客户端199
9.2.4 从客户端读取SVN配置200
9.2.5 目录配置总结201
9.2.6 刷新配置202
9.2.7 刷新Bean203
9.3 配置的加密和解密205
9.3.1 为服务器安装JCE205
9.3.2 加密和解密端点205
9.3.3 SVN存储加密数据206
9.3.4 非对称加密207
9.4 其他配置207
9.4.1 服务器健康指示器207
9.4.2 客户端的错误提前与重试机制208
9.4.3 安全配置209
9.4.4 访问服务器配置210
9.5 整合使用210
9.5.1 准备工作210
9.5.2 配置服务器、客户端整合Eureka212
9.5.3 整合Zuul214
9.5.4 整合Spring Cloud Bus刷新配置216
9.5.5 刷新单个节点配置217
9.6 本章小结217
0章 微服务跟踪219
10.1 概述220
10.1.1 实际问题与Sleuth220
10.1.2 服务跟踪系统220
10.1.3 Sleuth的基本概念220
10.1.4 项目准备221
10.2 Sleuth整合Zipkin222
10.2.1 Zipkin简介222
10.2.2 构建Zipkin服务器项目223
10.2.3 配置微服务224
10.2.4 查看数据225
10.2.5 使用MySQL保存数据228
10.2.6 使用消息采集数据230
10.3 Sleuth整合ELK232
10.3.1 关于ELK232
10.3.2 下载ELK233
10.3.3 运行Elasticsearch233
10.3.4 使用Logstash读取JSON234
10.3.5 使用Kibana展示数据235
10.3.6 使用Logback转换JSON237
10.4 本章小结240
1章 微服务数据库实战241
11.1 概述242
11.1.1 关于Spring Data242
11.1.2 Spring Data的功能243
11.1.3 Spring Data的模块243
11.2 Spring Data与JPA243
11.2.1 构建项目244
11.2.2 数据访问层与业务层245
11.2.3 自定义数据存储逻辑247
11.2.4 方法名查询248
11.2.5 使用@Query注解249
11.3 Spring Data与MongoDB250
11.3.1 安装MongoDB250
11.3.2 配置权限251
11.3.3 MongoDB的概念252
11.3.4 构建项目252
11.3.5 数据访问层与业务层253
11.3.6 自定义数据存储逻辑254
11.3.7 方法名查询256
11.3.8 使用@Query注解258
11.4 Spring Data与Redis258
11.4.1 Redis的安装与配置258
11.4.2 Redis的数据类型259
11.4.3 使用Jedis260
11.4.4 构建Spring Data项目262
11.4.5 数据访问层与业务层263
11.4.6 自定义数据存储逻辑265
11.4.7 方法名查询267
11.5 本章小结268
2章 案例实战269
12.1 概述270
12.1.1 表现层技术270
12.1.2 案例概述270
12.1.3 案例技

作者介绍


作者杨恩雄,从事十多年的Java EE企业应用开发,曾任中企动力系统设计师、中企开源项目经理、数码辰星科技公司项目经理,参与过多个企业级项目的设计与架构工作。曾负责辰星“电影票网络销售系统”的整体架构,精通Activiti、Drools、ESB等开源技术,在SOA、SaaS、大数据应用、互联网系统架构方面有着丰富的经验,曾出版《疯狂Java实战演义》《疯狂工作流讲义》《疯狂Spring Cloud微服务架构实战》等书籍。

文摘


序言