《微服务分布式架构基础与实战》求取 ⇩

第1章微服务分布式架构设计原理1

1.1 Java Web应用程序的发展历史1

1.2微服务分布式2

1.2.1Spring Boot 微服务的定义和特点3

1.2.2 Spring Boot的职场导读3

1.2.3 Spring部分内容4

1.2.4微服务的拆分6

1.3【实例】微服务工程Hello World7

1.3.1实例背景7

1.3.2创建Maven Project7

1.3.3使用空Maven Project模板7

1.3.4编辑Maven坐标定位及工程名8

1.3.5检查Maven目录结构9

1.3.6编写Pom文件10

1.3.7Spring Boot依赖包的导入12

1.3.8编写Spring Boot启动类14

1.3.9编写Spring Boot接口14

1.3.10当前项目结构14

1.3.11启动工程15

1.3.12 Spring Boot初始化启动后16

1.3.13实例易错点16

1.4Spring Boot启动类扫描Bean18

1.4.1@SpringBootApplication注解18

1.4.2@ComponentScan注解20

1.4.3 Spring Boot扫描其他包下文件20

1.5【实例】将端口号改成909021

1.5.1实例背景21

1.5.2创建application.properties资源配置文件22

1.5.3增加资源配置文件中的配置信息23

1.5.4运行结果23

1.5.5实例易错点23

1.6YAML文件24

1.6.1 YAML文件简介25

1.6.2 YAML文件的书写格式25

1.7【实例】使用YAML配置文件25

1.7.1实例背景25

1.7.2原properties文件25

1.7.3转换格式后的YAML文件26

1.7.4实例易错点26

1.8【实例】通过单配置文件让工程适应多应用场景27

1.8.1实例背景27

1.8.2更改application.yml文件27

1.8.3更改启动类27

1.8.4输入启动参数29

1.8.5运行结果30

1.8.6实例易错点30

1.9【实例】通过多配置文件使工程适应多应用场景31

1.9.1实例背景31

1.9.2新建SIT和UAT环境所需资源配置文件31

1.9.3新建系统资源配置文件31

1.9.4编写启动类31

1.9.5当前项目结构32

1.9.6运行结果32

1.10微服务配置权重32

1.10.1资源配置信息类型的权重32

1.10.2资源配置文件类型的权重33

1.10.3资源配置文件存在位置与权重解读33

1.11本章小结34

1.12习题34

第2章分布式的注册中心35

2.1注册中心35

2.1.1Eureka与Consul的区别35

2.1.2 Consul的相关术语37

2.1.3 Consul的安装37

2.2Consul的常用命令37

2.2.1 consul agent -dev38

2.2.2 consul -members39

2.2.3 consul leave40

2.2.4 agent命令的常用配置参数40

2.2.5 HTTP API41

2.3【实例】创建第一个微服务分布式项目42

2.3.1实例背景42

2.3.2搭建Consul集群42

2.3.3创建微服务工程编写相应依赖文件45

2.3.4Spring Cloud和Spring Boot的版本对应关系46

2.3.5编写微服务YAML资源配置文件46

2.3.6编写微服务启动类注册到Consul上48

2.3.7当前项目结构48

2.3.8运行结果49

2.3.9实例易错点50

2.4【实例】通过代码获取Consul中的服务信息51

2.4.1实例背景51

2.4.2编写获得其他注册服务的代码52

2.4.3运行结果53

2.4.4实例易错点53

2.5【实例】Spring Cloud操作Consul的K/V存储54

2.5.1实例背景54

2.5.2添加依赖54

2.5.3利用Consul的UI界面添加K/V存储54

2.5.4编写YAML资源配置文件对应K/V存储55

2.5.5编写MyConfig.java文件对应相关K/V存储56

2.5.6调用MyConfig.java中的参数57

2.5.7在启动类引用相关配置57

2.5.8当前项目结构58

2.5.9运行结果58

2.5.10实例易错点60

2.6本章小结60

2.7习题60

第3章分布式的通信61

3.1分布式通信61

3.1.1Spring Cloud Feign61

3.1.2 Swagger61

3.2【实例】微服务集成Swagger62

3.2.1实例背景62

3.2.2编写Swagger依赖62

3.2.3编写Swagger配置63

3.2.4编写接口与接口处的Swagger配置64

3.2.5当前项目结构66

3.2.6运行效果66

3.2.7实例易错点70

3.3【实例】 Feign调用微服务接口72

3.3.1实例背景72

3.3.2引入相关配置信息73

3.3.3编写Feign客户端73

3.3.4编写调用75

3.3.5编写启动类76

3.3.6当前项目结构76

3.3.7运行结果77

3.3.8实例易错点77

3.4【实例】Feign的拦截器78

3.4.1实例背景78

3.4.2在cloud-admin-8084工程中增加拦截器78

3.4.3当前项目结构79

3.4.4运行结果79

3.4.5实例易错点80

3.5Feign的配置81

3.5.1传输数据压缩配置81

3.5.2日志配置82

3.5.3超时配置83

3.6【实例】Feign的降级回退处理——Feign的Fallback类84

3.6.1实例背景84

3.6.2在资源配置文件中开启Feign内置的Hystrix权限84

3.6.3编写Fallback降级类84

3.6.4 Service整合Fallback降级类84

3.6.5当前项目结构85

3.6.6运行结果85

3.7【实例】Feign的降级回退处理——Feign的Fallback工厂86

3.7.1实例背景86

3.7.2编写Fallback降级工厂86

3.7.3整合Fallback降级工厂87

3.7.4实例易错点87

3.8本章小结88

3.9习题88

第4章分布式的客户端负载均衡89

4.1负载均衡89

4.1.1传统服务器端负载均衡89

4.1.2Ribbon客户端负载均衡89

4.2【实例】Feign整合Ribbon分发请求90

4.2.1实例背景90

4.2.2编写cloud-book-8086启动类与配置类支持Ribbon91

4.2.3Service和Controller92

4.2.4当前项目结构94

4.2.5运行效果95

4.2.6实例易错点96

4.3 Ribbon的负载均衡策略配置97

4.4本章小结98

4.5习题98

第5章分布式的断路器99

5.1断路器99

5.1.1为什么需要断路器99

5.1.2Hystrix99

5.1.3 Hystrix解决的问题100

5.1.4 Hystrix如何解决问题100

5.2【实例】Hystrix断路器的降级回退101

5.2.1实例背景101

5.2.2编写相关Pom文件101

5.2.3编写application资源配置文件101

5.2.4编写Ribbon配置类102

5.2.5编写启动类102

5.2.6编写Service类103

5.2.7编写Controller类103

5.2.8当前项目结构104

5.2.9运行结果105

5.2.10实例易错点106

5.3Hystrix线程池108

5.3.1 Hystrix断路器注解式的命令配置109

5.3.2 Hystrix断路器的注解式线程池配置111

5.3.3 Hystrix断路器注解式的整体定制配置112

5.3.4 Hystrix断路器资源配置式的整体定制配置113

5.4【实例】Hystrix断路器的请求缓存114

5.4.1实例背景114

5.4.2通过Filter初始化Hystrix上下文114

5.4.3让启动类扫描Filter过滤器116

5.4.4编写Controller的Helper类116

5.4.5编写Controller类118

5.4.6当前项目结构118

5.4.7运行结果119

5.4.8销毁Hystrix的请求缓存121

5.4.9实例易错点121

5.5【实例】Hystrix的请求合并123

5.5.1实例背景123

5.5.2增加@HystrixCollapser请求合并修饰的函数124

5.5.3Controller中调用请求合并函数126

5.5.4当前项目结构126

5.5.5运行结果127

5.5.6实例易错点128

5.6【实例】Hystrix的可视化监控129

5.6.1实例背景129

5.6.2Hystrix可视化监控的依赖129

5.6.3 Hystrix可视化监控的启动类129

5.6.4被监控的微服务增加响应地址130

5.6.5当前项目结构131

5.6.6运行结果132

5.6.7实例易错点134

5.7本章小结135

5.8习题135

第6章微服务的异步线程池136

6.1异步线程池136

6.1.1异步线程池特点136

6.1.2常见的线程池136

6.2【实例】创建无返回值异步线程池137

6.2.1实例背景137

6.2.2编写Pom文件137

6.2.3编写Spring Boot启动类138

6.2.4编写异步线程池任务接口与实现138

6.2.5编写外部可调用接口139

6.2.6当前项目结构140

6.2.7运行程序查看异步线程池效果140

6.2.8实例易错点141

6.3【实例】创建有返回值异步线程池141

6.3.1实例背景141

6.3.2增加新的服务接口141

6.3.3增加新的服务实现141

6.3.4增加新的调用142

6.3.5当前项目结构142

6.3.6运行程序查看异步线程池效果142

6.3.7实例易错点143

6.4【实例】优化异步线程池143

6.4.1实例背景143

6.4.2创建初始化线程池配置类143

6.4.3更改无返回值的异步线程池Service实现类145

6.4.4运行程序查看异步线程池效果145

6.4.5实例易错点146

6.5【实例】优雅停止异步线程池146

6.5.1实例背景146

6.5.2何为“优雅”146

6.5.3修改原Config配置类147

6.5.4修改原Controller控制层148

6.5.5当前项目结构149

6.5.6优雅停止异步线程池的执行效果150

6.5.7实例易错点152

6.6@Enable*注解152

6.7本章小结152

6.8习题153

第7章微服务整合持久化数据源154

7.1spring-data154

7.1.1 ORM规范154

7.1.2 JPA、Hibernate、 spring-data-jpa之间的关系155

7.1.3安装MySQL155

7.2【实例】Spring Boot整合MyBaits注解式编程156

7.2.1实例背景156

7.2.2添加Pom文件156

7.2.3编写application资源配置文件157

7.2.4编写dao层157

7.2.5编写访问接口159

7.2.6当前项目结构160

7.2.7运行效果160

7.2.8实例易错点160

7.3@Mapper注解详解162

7.3.1@Mapper和XML形式的对应关系162

7.3.2MyBatis的注解式编程多表查询162

7.3.3 MyBatis的注解式编程分页查询163

7.3.4注册DataSource数据源165

7.4【实例】Spring Boot整合spring-data-jpa166

7.4.1实例背景166

7.4.2添加Pom文件166

7.4.3添加资源配置文件中的相关信息166

7.4.4添加实体类映射167

7.4.5添加JPA的dao层168

7.4.6添加Controller控制层查询JPA的dao层169

7.4.7当前项目结构170

7.4.8运行结果170

7.4.9实例易错点170

7.5本章小结171

7.6习题171

第8章微服务事务172

8.1@Transactional注解172

8.1.1@Transactional声明式事务的传播行为173

8.1.2脏读、不可重复读与幻读173

8.1.3@Transactional声明式事务的隔离级别174

8.1.4@Transactional声明式事务的超时时间175

8.1.5@Transactional声明式事务的只读175

8.1.6@Transactional声明式事务指定异常176

8.2【实例】 Spring Boot整合声明式事务176

8.2.1实例背景176

8.2.2整合@Transactional的Service层编写177

8.2.3整合@Transactional的Controller层编写178

8.2.4当前项目结构179

8.2.5运行结果179

8.2.6实例易错点180

8.3本章小结181

8.4习题181

第9章微服务的缓存与分布式的消息通信182

9.1Redis182

9.1.1 BSD协议182

9.1.2 Java与Redis的历史183

9.1.3 Spring Data Redis183

9.2【实例】微服务整合Spring DataRedis增删改查184

9.2.1实例背景184

9.2.2编写application.properties资源配置文件184

9.2.3配置RedisTemplate模板185

9.2.4编写操作Redis的工具类186

9.2.5编写实体类及接口调用188

9.2.6当前项目结构189

9.2.7运行结果189

9.2.8实例易错点190

9.3【实例】分布式使用Redis实现消息通信190

9.3.1消息通信应用场景190

9.3.2 Redis与MQ一系列消息队列的区别191

9.3.3实例背景191

9.3.4在send微服务中配置模板192

9.3.5在send微服务中定时向队列发布数据192

9.3.6在listener微服务中编写订阅渠道的配置信息193

9.3.7在listener微服务中编写监听实现类195

9.3.8当前项目结构195

9.3.9send微服务与listener微服务运行结果196

9.3.10实例易错点196

9.4 Spring Cache与Spring Data Redis的区别196

9.5【实例】保持MySQL与Redis数据一致性197

9.5.1实例背景197

9.5.2编写资源配置文件198

9.5.3编写实体类Java Bean198

9.5.4编写JPA仓库199

9.5.5编写Service接口及实现类199

9.5.6编写Controller接口进行测试202

9.5.7当前项目结构202

9.5.8运行结果202

9.5.9实例易错点203

9.6本章小结204

9.7习题204

第10章微服务的任务调度与分布式的任务调度205

10.1【实例】微服务整合任务调度205

10.1.1实例背景205

10.1.2编写任务调度实现类205

10.1.3编写资源配置文件206

10.1.4当前项目结构206

10.1.5运行效果206

10.1.6实例易错点206

10.2@Scheduled注解详解207

10.2.1cron表达式207

10.2.2每个字段允许值207

10.2.3 cron特殊字符意义208

10.2.4常用cron表达式208

10.3任务调度的分布式209

10.3.1任务调度的分布式解决方案209

10.3.2任务调度的分布式实现原理210

10.4【实例】微服务整合任务调度分布式210

10.4.1实例背景210

10.4.2增加Quartz依赖210

10.4.3在数据库中增加Quartz分布式的管理表210

10.4.4编写资源配置文件211

10.4.5创建任务调度管理Java Bean212

10.4.6创建所需执行的任务213

10.4.7创建执行任务的操作类213

10.4.8增加控制层216

10.4.9当前项目结构218

10.4.10运行效果218

10.4.11实例易错点219

10.5本章小结220

10.6习题220

第11章微服务的文件上传与分布式文件管理221

11.1文件上传/下载原理221

11.1.1SpringMVC文件上传原理223

11.1.2文件下载原理225

11.2【实例】微服务的单文件和多文件上传226

11.2.1实例背景226

11.2.2编写application.properties资源配置文件227

11.2.3编写相关接口228

11.2.4编写前台页面230

11.2.5当前项目结构231

11.2.6运行结果232

11.2.7实例易错点233

11.3分布式文件管理235

11.3.1分布式文件管理特性235

11.3.2分布式文件管理解决的问题235

11.3.3分布式文件管理解决方案235

11.4FastDFS解决方案235

11.4.1 FastDFS的存储策略236

11.4.2 FastDFS的文件上传过程236

11.4.3 FastDFS的文件同步过程236

11.4.4 FastDFS的文件下载过程237

11.5FastDFS的安装部署237

11.5.1安装LibFastCommon237

11.5.2安装FastDFS237

11.5.3配置FastDFS的跟踪服务器238

11.5.4配置FastDFS的数据存储服务器239

11.5.5配置FastDFS的客户端并测试240

11.5.6安装Nginx部署FastDFS240

11.6【实例】分布式微服务整合FastDFS243

11.6.1实例背景243

11.6.2编写FastDFS核心配置类244

11.6.3编写FastDFS工具类244

11.6.4编写测试接口245

11.6.5当前项目结构246

11.6.6运行结果246

11.6.7实例易错点247

11.7本章小结248

11.8习题248

第12章扩展与部署249

12.1微服务分布式架构相关方案总结249

12.1.1解决方案与目标249

12.1.2分布式部分技术细节扩展250

12.1.3动静分离250

12.1.4前后端分离250

12.1.5数据库读写分离与主从分离251

12.1.6应用层与数据层分离251

12.1.7CDN加速251

12.1.8异步架构251

12.1.9响应式编程251

12.1.10冗余化管理252

12.1.11灰度发布252

12.1.12页面静态化252

12.1.13服务端主动推送253

12.2微服务扩展253

12.2.1微服务整合日志253

12.2.2微服务整合单元测试253

12.2.3微服务整合全局异常253

12.2.4微服务整合JSR-303验证机制254

12.2.5微服务整合国际化254

12.2.6微服务整合安全与认证254

12.2.7微服务整合WebSocket协议254

12.2.8微服务整合HTTPS255

12.2.9微服务整合批处理255

12.2.10微服务整合lom255

12.2.11微服务整合异步消息驱动255

12.2.12分布式链路监控255

12.2.13分布式单点登录256

12.3【实例】分布式网关的初步测试256

12.3.1实例背景256

12.3.2使用资源配置文件的方式配置分布式网关256

12.3.3使用注册Bean的方式配置分布式网关257

12.3.4运行结果258

12.4微服务打包258

12.4.1Jar包258

12.4.2 War包259

12.5本章小结259

12.6习题259

参考文献260

2020《微服务分布式架构基础与实战》由于是年代较久的资料都绝版了,几乎不可能购买到实物。如果大家为了学习确实需要,可向博主求助其电子版PDF文件(由张方兴编著 2020 北京:电子工业出版社 出版的版本) 。对合法合规的求助,我会当即受理并将下载地址发送给你。

高度相关资料

税收基础与实务(1995 PDF版)
税收基础与实务
1995 西安:西北大学出版社
服装结构设计与实战( PDF版)
服装结构设计与实战
电子商务基础与实务( PDF版)
电子商务基础与实务
TYPESCRIPT图形渲染实战  基于WEBGL的3D架构与实现(2020 PDF版)
TYPESCRIPT图形渲染实战 基于WEBGL的3D架构与实现
2020
SPRING  CLOUD  ALIBABA微服务原理与实战(2020 PDF版)
SPRING CLOUD ALIBABA微服务原理与实战
2020
架构解密  从分布式到微服务  第2版(2020 PDF版)
架构解密 从分布式到微服务 第2版
2020
微服务与容器(2020 PDF版)
微服务与容器
2020
基础常微分方程式论(1979年04月第1版 PDF版)
基础常微分方程式论
1979年04月第1版 朝仓书店
振动机器基础与构架的设计(1984 PDF版)
振动机器基础与构架的设计
1984 哈尔滨:黑龙江科学技术出版社
服装构成基础(1996 PDF版)
服装构成基础
1996 北京:中国纺织出版社
分布式系统与分布式算法(1995 PDF版)
分布式系统与分布式算法
1995 广州:暨南大学出版社
离散事件系统建模与仿真(1999 PDF版)
离散事件系统建模与仿真
1999 北京:清华大学出版社
出纳基础与实务(1996 PDF版)
出纳基础与实务
1996 北京:中国统计出版社
饭店服务基础(1994 PDF版)
饭店服务基础
1994 中国劳动
公债基础与实务(1994 PDF版)
公债基础与实务
1994 济南:山东人民出版社