失效链接处理 |
微服务分布式架构基础与实?mdash;—ZSpring Boot + Spring Cloud 张方?PDF 下蝲
下蝲地址Q?/strong>
版权归出版社和原作者所有,链接已删除,误买正?br style="padding: 0px; margin: 0px;" />
用户下蝲说明Q?/strong>
?sh)子版仅供预览,下蝲?4时内务必删除,支持正版Q喜Ƣ的误买正版书c:(x)
http://product.dangdang.com/673069418.html
相关截图Q?br /> ![]() 资料介:(x)
微服务分布式架构的内Ҏ(gu)新P代速度极快Q?018q?月开始就有许多微服务分布式的数据Q但是到2019q已l跟不上Spring Cloud的版本了Q过d多数数据Spring Cloud都用Eureka作ؓ(f)注册中心Q而Spring 官方已经在Spring Cloud Eureka 2.0以后宣布停止了Spring Cloud Eureka的更新计划,废弃该项目ƈConsul作ؓ(f)Spring Cloud的注册中心。另外大多数书籍的网关依旧用的Spring Cloud ZuulQ但是目前Spring 已经逐渐废弃Spring Cloud ZuulQ而是让Spring Cloud Gateway接替他的|关位置。市面上的同cM的技术将没有此内容更新。另外该书从分布式架构程序的方式角度q行讲解Q包括分布式d调度、分布式事务理Q重Ҏ(gu)?qing)了q部分的实战与思想。很多书只是用来教导框架构架Q而该书则希望通过框架让读者认识分布式的具体操作方法?/div>
《微服务分布式架构基与实战:(x)ZSpring Boot + Spring Cloud》以案例d模式主要介绍了Spring Boot微服务的持久化、缓存、缓存同步、队列,Spring Cloud的新版注册中心Consul、新版网关Spring Cloud Gateway、Spring Cloud分布式通讯、共享信息、单点登录、鉴权等相关内容?/div>
资料目录Q?/strong> W??微服务分布式架构设计原理t1
1Q? Java Web应用E序的发展历史t1
1Q? 微服务分布式t2
1Q?Q? Spring Boot微服务的定义和特点t3
1Q?Q? Spring Boot的职场导读t3
1Q?Q? Spring部分内容t4
1Q?Q? 微服务的拆分t6
1Q? 【实例】微服务工程Hello Worldt7
1Q?Q? 实例背景t7
1Q?Q? 创徏MaveProjectt7
1Q?Q? 使用IMaveProject模板t7
1Q?Q? ~辑Maven坐标定位?qing)工E名t8
1Q?Q? 查Maven目录l构t9
1Q?Q? ~写Pom文gt10
1Q?Q? Spring Boot依赖包的导入t12
1Q?Q? ~写Spring Boot启动ct14
1Q?Q? ~写Spring Boot接口t14
1Q?Q?0 当前目l构t14
1Q?Q?1 启动工程t15
1Q?Q?2 Spring Boot初始化启动后t16
1Q?Q?3 实例易错点t16
1Q? Spring Boot启动cL描Beant18
1Q?Q? @SpringBootApplication注解t18
1Q?Q? @ComponentScan注解t20
1Q?Q? Spring Boot扫描其他包下文gt20
1Q? 【实例】将端口h?090t21
1Q?Q? 实例背景t21
1Q?Q? 创徏applicationQproperties资源配置
文gt22
1Q?Q? 增加资源配置文g中的配置信息t23
1Q?Q? q行l果t23
1Q?Q? 实例易错点t23
1Q? YAML文gt24
1Q?Q? YAML文g介t25
1Q?Q? YAML文g的书写格式t25
1Q? 【实例】用YAML配置文gt25
1Q?Q? 实例背景t25
1Q?Q? 原properties文gt25
1Q?Q? 转换格式后的YAML文gt26
1Q?Q? 实例易错点t26
1Q? 【实例】通过单配|文件让工程
适应多应用场景t27
1Q?Q? 实例背景t27
1Q?Q? 更改applicationQyml文gt27
1Q?Q? 更改启动ct27
1Q?Q? 输入启动参数t29
1Q?Q? q行l果t30
1Q?Q? 实例易错点t30
1Q? 【实例】通过多配|文件工程
适应多应用场景t31
1Q?Q? 实例背景t31
1Q?Q? 新徏SIT和UAT环境所需资源
配置文gt31
1Q?Q? 新徏pȝ资源配置文gt31
1Q?Q? ~写启动ct31
1Q?Q? 当前目l构t32
1Q?Q? q行l果t32
1Q?0 微服务配|权重t32
1Q?0Q? 资源配置信息cd的权重t32
1Q?0Q? 资源配置文gcd的权重t33
1Q?0Q? 资源配置文g存在位置与权?/div>
解读t33
1Q?1 本章结t34
1Q?2 ?fn)题t34
W??分布式的注册中心t35
2Q? 注册中心t35
2Q?Q? Eureka与Consul的区别t35
2Q?Q? Consul的相x语t37
2Q?Q? Consul的安装t37
2Q? Consul的常用命令t37
2Q?Q? consul agent -devt38
2Q?Q? consul -memberst39
2Q?Q? consul leavet40
2Q?Q? agent命o(h)的常用配|参数t40
2Q?Q? HTTP APIt41
2Q? 【实例】创建第一个微服务分布?/div>
目t42
2Q?Q? 实例背景t42
2Q?Q? 搭徏Consul集群t42
2Q?Q? 创徏微服务工E编写相应依?/div>
文gt45
2Q?Q? Spring Cloud和Spring Boot?/div>
版本对应关系t46
2Q?Q? ~写微服务YAML资源配置文gt46
2Q?Q? ~写微服务启动类注册?/div>
Consul上t48
2Q?Q? 当前目l构t48
2Q?Q? q行l果t49
2Q?Q? 实例易错点t50
2Q? 【实例】通过代码获取Consul中的
服务信息t51
2Q?Q? 实例背景t51
2Q? 2 ~写获得其他注册服务的代码t52
2Q? 3 q行l果t53
2Q?Q? 实例易错点t53
2Q? 【实例】Spring Cloud操作Consul
的K/V存储t54
2Q?Q? 实例背景t54
2Q?Q? d依赖t54
2Q?Q? 利用Consul的UI界面dK/V
存储t54
2Q?Q? ~写YAML资源配置文g对应
K/V存储t55
2Q?Q? ~写MyConfigQjava文g对应
相关K/V存储t56
2Q?Q? 调用MyConfigQjava中的参数t57
2Q?Q? 在启动类引用相关配置t57
2Q?Q? 当前目l构t58
2Q?Q? q行l果t58
2Q?Q?0 实例易错点t60
2Q? 本章结t60
2Q? ?fn)题t60
W??分布式的通信t61
3Q? 分布式通信t61
3Q?Q? Spring Cloud Feignt61
3Q?Q? Swaggert61
3Q? 【实例】微服务集成Swaggert62
3Q?Q? 实例背景t62
3Q?Q? ~写Swagger依赖t62
3Q?Q? ~写Swagger配置t63
3Q?Q? ~写接口与接口处的Swagger
配置t64
3Q?Q? 当前目l构t66
3Q?Q? q行效果t66
3Q?Q? 实例易错点t70
3Q? 【实例】Feign调用微服务接口t72
3Q?Q? 实例背景t72
3Q?Q? 引入相关配置信息t73
3Q?Q? ~写Feign客户端t73
3Q?Q? ~写调用t75
3Q?Q? ~写启动ct76
3Q?Q? 当前目l构t76
3Q?Q? q行l果t77
3Q?Q? 实例易错点t77
3Q? 【实例】Feign的拦截器t78
3Q?Q? 实例背景t78
3Q?Q? 在cloud-admin-8084工程中增?/div>
拦截器t78
3Q?Q? 当前目l构t79
3Q?Q? q行l果t79
3Q?Q? 实例易错点t80
3Q? Feign的配|t81
3Q?Q? 传输数据压羃配置t81
3Q?Q? 日志配置t82
3Q?Q? 时配置t83
3Q? 【实例】Feign的降U回退处理
――Feign的Fallbackct84
3Q?Q? 实例背景t84
3Q?Q? 在资源配|文件中开启Feign内置
的Hystrix权限t84
3Q?Q? ~写Fallback降ct84
3Q?Q? Service整合F(tun)allback降ct84
3Q?Q? 当前目l构t85
3Q?Q? q行l果t85
3Q? 【实例】Feign的降U回退处理
――Feign的Fallback工厂t86
3Q?Q? 实例背景t86
3Q?Q? ~写Fallback降工厂t86
3Q?Q? 整合F(tun)allback降工厂t87
3Q?Q? 实例易错点t87
3Q? 本章结t88
3Q? ?fn)题t88
W??分布式的客户端负载均衡t89
4Q? 负蝲均衡t89
4Q?Q? 传统服务器端负蝲均衡t89
4Q?Q? Ribbon客户端负载均衡t89
4Q? 【实例】Feign整合Ribbon分发
ht90
4Q?Q? 实例背景t90
4Q?Q? ~写cloud-book-8086启动cM
配置cL持Ribbont91
4Q?Q? Service和Controllert92
4Q?Q? 当前目l构t94
4Q?Q? q行效果t95
4Q?Q? 实例易错点t96
4Q? Ribbon的负载均衡策略配|t97
4Q? 本章结t98
4Q? ?fn)题t98
W??分布式的断\器t99
5Q? 断\器t99
5Q?Q? Z么需要断路器t99
5Q?Q? Hystrixt99
5Q?Q? Hystrix解决的问题t100
5Q?Q? Hystrix如何解决问题t100
5Q? 【实例】Hystrix断\器的降
回退t101
5Q?Q? 实例背景t101
5Q?Q? ~写相关Pom文gt101
5Q?Q? ~写application资源配置文gt101
5Q?Q? ~写Ribbon配置ct102
5Q?Q? ~写启动ct102
5Q?Q? ~写Servicect103
5Q?Q? ~写C(j)ontrollerct103
5Q?Q? 当前目l构t104
5Q?Q? q行l果t105
5Q?Q?0 实例易错点t106
5Q? HystrixU程池t108
5Q?Q? Hystrix断\器注解式的命?/div>
配置t109
5Q?Q? Hystrix断\器的注解式线E池
配置t111
5Q?Q? Hystrix断\器注解式的整?/div>
定制配置t112
5Q?Q? Hystrix断\器资源配|式?/div>
整体定制配置t113
5Q? 【实例】Hystrix断\器的h
~存t114
5Q?Q? 实例背景t114
5Q?Q? 通过Filter初始化Hystrix
上下文t114
5Q?Q? 让启动类扫描Filterqo(h)器t116
5Q?Q? ~写C(j)ontroller的Helperct116
5Q?Q? ~写C(j)ontrollerct118
5Q?Q? 当前目l构t118
5Q?Q? q行l果t119
5Q?Q? 销毁Hystrix的请求缓存t121
5Q?Q? 实例易错点t121
5Q? 【实例】Hystrix的请求合qt123
5Q?Q? 实例背景t123
5Q?Q? 增加@HystrixCollapserh合ƈ
修饰的函数t124
5Q?Q? Controller中调用请求合q函数t126
5Q?Q? 当前目l构t126
5Q?Q? q行l果t127
5Q?Q? 实例易错点t128
5Q? 【实例】Hystrix的可视化监控t129
5Q?Q? 实例背景t129
5Q?Q? Hystrix可视化监控的依赖t129
5Q?Q? Hystrix可视化监控的启动ct129
5Q?Q? 被监控的微服务增加响应地址t130
5Q?Q? 当前目l构t131
5Q?Q? q行l果t132
5Q?Q? 实例易错点t134
5Q? 本章结t135
5Q? ?fn)题t135
W??微服务的异步U程池t136
6Q? 异步U程池t136
6Q?Q? 异步U程池特点t136
6Q?Q? 常见的线E池t136
6Q? 【实例】创建无q回值异步线
E池t137
6Q?Q? 实例背景t137
6Q?Q? ~写Pom文gt137
6Q?Q? ~写Spring Boot启动ct138
6Q?Q? ~写异步U程池Q务接口与
实现t138
6Q?Q? ~写外部可调用接口t139
6Q?Q? 当前目l构t140
6Q?Q? q行E序查看异步U程池效果t140
6Q?Q? 实例易错点t141
6Q? 【实例】创建有q回值异?/div>
U程池t141
6Q?Q? 实例背景t141
6Q?Q? 增加新的服务接口t141
6Q?Q? 增加新的服务实现t141
6Q?Q? 增加新的调用t142
6Q?Q? 当前目l构t142
6Q?Q? q行E序查看异步U程池效果t142
6Q?Q? 实例易错点t143
6Q? 【实例】优化异步线E池t143
6Q?Q? 实例背景t143
6Q?Q? 创徏初始化线E池配置ct143
6Q?Q? 更改无返回值的异步U程?/div>
Service实现ct145
6Q?Q? q行E序查看异步U程池效果t145
6Q?Q? 实例易错点t146
6Q? 【实例】优雅停止异步线E池t146
6Q?Q? 实例背景t146
6Q?Q? 何ؓ(f)“优雅”t146
6Q?Q? 修改原Config配置ct147
6Q?Q? 修改原Controller控制层t148
6Q?Q? 当前目l构t149
6Q?Q? 优雅停止异步U程池的执行
效果t150
6Q?Q? 实例易错点t152
6Q? @Enable*注解t152
6Q? 本章结t152
6Q? ?fn)题t153
W??微服务整合持久化数据源t154
7Q? spring-datat154
7Q?Q? ORM规范t154
7Q?Q? JPA、Hibernate、spring-data-jpa
之间的关pt155
7Q?Q? 安装MySQLt155
7Q? 【实例】Spring Boot整合MyBaits
注解式编Et156
7Q?Q? 实例背景t156
7Q?Q? dPom文gt156
7Q?Q? ~写application资源配置文gt157
7Q?Q? ~写dao层t157
7Q?Q? ~写讉K接口t159
7Q?Q? 当前目l构t160
7Q?Q? q行效果t160
7Q?Q? 实例易错点t160
7Q? @Mapper注解详解t162
7Q?Q? @Mapper和XML形式的对?/div>
关系t162
7Q?Q? MyBatis的注解式~程多表
查询t162
7Q?Q? MyBatis的注解式~程分页
查询t163
7Q?Q? 注册DataSource数据源t165
7Q? 【实例】Spring Boot整合
spring-data-jpat166
7Q?Q? 实例背景t166
7Q?Q? dPom文gt166
7Q?Q? d资源配置文g中的相关
信息t166
7Q?Q? d实体cLt167
7Q?Q? dJPA的dao层t168
7Q?Q? dController控制层查询JPA?/div>
dao层t169
7Q?Q? 当前目l构t170
7Q?Q? q行l果t170
7Q?Q? 实例易错点t170
7Q? 本章结t171
7Q? ?fn)题t171
W??微服务事务t172
8Q? @Transactional注解t172
8Q?Q? @Transactional声明式事务的
传播行ؓ(f)t173
8Q?Q? 脏读、不可重复读与读t173
8Q?Q? @Transactional声明式事务的
隔离U别t174
8Q?Q? @Transactional声明式事务的
时旉t175
8Q?Q? @Transactional声明式事务的
只读t175
8Q?Q? @Transactional声明式事务指?/div>
异常t176
8Q? 【实例】Spring Boot整合声明?/div>
事务t176
8Q?Q? 实例背景t176
8Q?Q? 整合@Transactional的Service?/div>
~写t177
8Q?Q? 整合@Transactional的Controller?/div>
~写t178
8Q?Q? 当前目l构t179
8Q?Q? q行l果t179
8Q?Q? 实例易错点t180
8Q? 本章结t181
8Q? ?fn)题t181
W??微服务的~存与分布式的消?/div>
通信t182
9Q? Redist182
9Q?Q? BSD协议t182
9Q?Q? Java与Redis的历史t183
9Q?Q? Spring Data Redist183
9Q? 【实例】微服务整合Spring Data
Redis增删Ҏ(gu)t184
9Q?Q? 实例背景t184
9Q?Q? ~写applicationQproperties资源
配置文gt184
9Q?Q? 配置RedisTemplate模板t185
9Q?Q? ~写操作Redis的工L(fng)t186
9Q?Q? ~写实体cd(qing)接口调用t188
9Q?Q? 当前目l构t189
9Q?Q? q行l果t189
9Q?Q? 实例易错点t190
9Q? 【实例】分布式使用Redis实现
消息通信t190
9Q?Q? 消息通信应用场景t190
9Q?Q? Redis与MQ一pd消息队列?/div>
区别t191
9Q?Q? 实例背景t191
9Q?Q? 在send微服务中配置模板t192
9Q?Q? 在send微服务中定时向队?/div>
发布数据t192
9Q?Q? 在listener微服务中~写订阅渠道
的配|信息t193
9Q?Q? 在listener微服务中~写监听
实现ct195
9Q?Q? 当前目l构t195
9Q?Q? send微服务与listener微服务运?/div>
l果t196
9Q?Q?0 实例易错点t196
9Q? Spring Cache与Spring Data Redis
的区别t196
9Q? 【实例】保持MySQL与Redis
数据一致性t197
9Q?Q? 实例背景t197
9Q?Q? ~写资源配置文gt198
9Q?Q? ~写实体cJava Beant198
9Q?Q? ~写JPA仓库t199
9Q?Q? ~写Service接口?qing)实现类t199
9Q?Q? ~写C(j)ontroller接口q行试t202
9Q?Q? 当前目l构t202
9Q?Q? q行l果t202
9Q?Q? 实例易错点t203
9Q? 本章结t204
9Q? ?fn)题t204
W?0?微服务的d调度与分布式?/div>
d调度t205
10Q? 【实例】微服务整合d调度t205
10Q?Q? 实例背景t205
10Q?Q? ~写d调度实现ct205
10Q?Q? ~写资源配置文gt206
10Q?Q? 当前目l构t206
10Q?Q? q行效果t206
10Q?Q? 实例易错点t206
10Q? @Scheduled注解详解t207
10Q?Q? cron表达式t207
10Q?Q? 每个字段允许值t207
10Q?Q? cronҎ(gu)字符意义t208
10Q?Q? 常用cron表达式t208
10Q? d调度的分布式t209
10Q?Q? d调度的分布式解决Ҏ(gu)t209
10Q?Q? d调度的分布式实现原理t210
10Q? 【实例】微服务整合d调度
分布式t210
10Q?Q? 实例背景t210
10Q?Q? 增加Quartz依赖t210
10Q?Q? 在数据库中增加Quartz分布?/div>
的管理表t210
10Q?Q? ~写资源配置文gt211
10Q?Q? 创徏d调度理Java Beant212
10Q?Q? 创徏所需执行的Q务t213
10Q?Q? 创徏执行d的操作类t213
10Q?Q? 增加控制层t216
10Q?Q? 当前目l构t218
10Q?Q?0 q行效果t218
10Q?Q?1 实例易错点t219
10Q? 本章结t220
10Q? ?fn)题t220
W?1?微服务的文g上传与分布式
文g理t221
11Q? 文g上传/下蝲原理t221
11Q?Q? SpringMVC文g上传原理t223
11Q?Q? 文g下蝲原理t225
11Q? 【实例】微服务的单文g?/div>
多文件上传t226
11Q?Q? 实例背景t226
11Q?Q? ~写applicationQproperties?/div>
源配|文件t227
11Q?Q? ~写相关接口t228
11Q?Q? ~写前台面t230
11Q?Q? 当前目l构t231
11Q?Q? q行l果t232
11Q?Q? 实例易错点t233
11Q? 分布式文件管理t235
11Q?Q? 分布式文件管理特性t235
11Q?Q? 分布式文件管理解决的问题t235
11Q?Q? 分布式文件管理解x案t235
11Q? FastDFS解决Ҏ(gu)t235
11Q?Q? FastDFS的存储策略t236
11Q?Q? FastDFS的文件上传过Et236
11Q?Q? FastDFS的文件同步过Et236
11Q?Q? FastDFS的文件下载过Et237
11Q? FastDFS的安装部|t237
11Q?Q? 安装LibFastCommont237
11Q?Q? 安装FastDFSt237
11Q?Q? 配置FastDFS的跟t服务器t238
11Q?Q? 配置FastDFS的数据存?/div>
服务器t239
11Q?Q? 配置FastDFS的客L(fng)
q测试t240
11Q?Q? 安装Nginx部vFastDFSt240
11Q? 【实例】分布式微服务整?/div>
FastDFSt243
11Q?Q? 实例背景t243
11Q?Q? ~写FastDFS核心配置ct244
11Q?Q? ~写FastDFS工具ct244
11Q?Q? ~写试接口t245
11Q?Q? 当前目l构t246
11Q?Q? q行l果t246
11Q?Q? 实例易错点t247
11Q? 本章结t248
11Q? ?fn)题t248
W?2?扩展与部|t249
12Q? 微服务分布式架构相关Ҏ(gu)
ȝt249
12Q?Q? 解决Ҏ(gu)与目标t249
12Q?Q? 分布式部分技术细节扩展t250
12Q?Q? 动静分离t250
12Q?Q? 前后端分t250
12Q?Q? 数据库读写分MM分离t251
12Q?Q? 应用层与数据层分t251
12Q?Q? CDN加速t251
12Q?Q? 异步架构t251
12Q?Q? 响应式编Et251
12Q?Q?0 冗余化管理t252
12Q?Q?1 灰度发布t252
12Q?Q?2 面静态化t252
12Q?Q?3 服务端主动推送t253
12Q? 微服务扩展t253
12Q?Q? 微服务整合日志t253
12Q?Q? 微服务整合单元测试t253
12Q?Q? 微服务整合全局异常t253
12Q?Q? 微服务整合JSR-303验证机制t254
12Q?Q? 微服务整合国际化t254
12Q?Q? 微服务整合安全与认证t254
12Q?Q? 微服务整合WebSocket协议t254
12Q?Q? 微服务整合HTTPSt255
12Q?Q? 微服务整合批处理t255
12Q?Q?0 微服务整合lombokt255
12Q?Q?1 微服务整合异步消息驱动t255
12Q?Q?2 分布式链路监控t255
12Q?Q?3 分布式单点登录t256
12Q? 【实例】分布式|关的初?/div>
试t256
12Q?Q? 实例背景t256
12Q?Q? 使用资源配置文g的方式配|?/div>
分布式网关t256
12Q?Q? 使用注册Bean的方式配|?/div>
分布式网关t257
12Q?Q? q行l果t258
12Q? 微服务打包t258
12Q?Q? Jar包t258
12Q?Q? War包t259
12Q? 本章结t259
12Q? ?fn)题t259
参考文献t260
|