图书介绍

Java微服务实战PDF|Epub|txt|kindle电子书版本网盘下载

Java微服务实战
  • 赵计刚著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:9787121328404
  • 出版时间:2017
  • 标注页数:284页
  • 文件大小:161MB
  • 文件页数:304页
  • 主题词:JAVA语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Java微服务实战PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1篇 基础框架篇2

第1章 微服务概述2

1.1 初识微服务2

1.1.1 什么是微服务2

1.1.2 为什么需要微服务3

1.1.3 微服务架构的缺点4

1.2 微服务中的组件与技术选型5

第2章 微服务基础框架11

2.1 Spring Boot的优势11

2.2 Spring Boot入门11

2.2.1 搭建项目框架11

2.2.2 开发第一个Spring Boot程序12

2.2.3 运行Spring Boot项目15

2.3 再学一招:使用Maven依赖树验证Spring Boot自动引包功能16

第3章 微服务文档输出18

3.1 Swagger概述18

3.2 如何使用Swagger18

3.2.1 搭建项目框架18

3.2.2 Spring Boot集成Swagger19

3.2.3 分析Swagger生成的API文档24

3.2.4 使用Swagger进行接口调用24

3.3 再学一招:使用Lombok消除POJO类模板代码25

第4章 微服务数据库27

4.1 单数据源27

4.1.1 搭建项目框架27

4.1.2 建库和建表28

4.1.3 使用MyBatis-Generator生成数据访问层28

4.1.4 Spring Boot集成MyBatis30

4.2 多数据源39

4.2.1 建库和建表40

4.2.2 使用MyBatis-Generator生成数据访问层41

4.2.3 结合AbstractRoutingDataSource实现动态数据源42

4.2.4 使用AOP简化数据源选择功能48

4.2.5 实现多数据源的步骤总结49

4.3 再学一招:MyBatis-Generator基本用法50

第5章 微服务缓存系统53

5.1 常用的缓存技术53

5.1.1 本地缓存与分布式缓存53

5.1.2 Memcached与Redis54

5.2 Redis 2.x客户端分片54

5.2.1 安装Redis54

5.2.2 Spring Boot集成ShardJedis55

5.3 Redis 3.x集群60

5.3.1 搭建Redis集群60

5.3.2 Spring Boot集成JedisCluster63

5.3.3 JedisCluster关键源码解析65

5.4 再学一招:使用GuavaCache实现本地缓存67

第6章 Spring Boot启动源码解析70

6.1 创建SpringApplication实例71

6.1.1 判断是否是Web环境72

6.1.2 创建并初始化ApplicationInitializer列表72

6.1.3 创建并初始化ApplicationListener列表75

6.1.4 初始化主类mainApplicationClass76

6.2 添加自定义监听器76

6.3 启动核心run方法77

6.3.1 创建启动停止计时器78

6.3.2 配置awt系统属性79

6.3.3 获取SpringApplicationRunListeners80

6.3.4 启动SpringApplicationRunListener81

6.3.5 创建ApplicationArguments81

6.3.6 创建并初始化ConfigurableEnvironment82

6.3.7 打印Banner88

6.3.8 创建ConfigurableApplicationContext88

6.3.9 准备ConfigurableApplicationContext90

6.3.10 刷新ConfigurableApplicationContext92

6.3.11 容器刷新后动作94

6.3.12 SpringApplicationRunListeners发布finish事件95

6.3.13 计时器停止计时95

6.4 再学一招:常用的获取属性的4种方法95

第2篇 服务框架篇98

第7章 微服务注册与发现98

7.1 初识Consul98

7.2 搭建Consul集群99

7.2.1 安装Consul99

7.2.2 启动Consul集群99

7.2.3 启动Consul-UI101

7.3 使用Consul实现服务注册与服务发现102

7.3.1 搭建项目框架102

7.3.2 配置服务注册信息104

7.3.3 实现服务启动注册106

7.3.4 实现服务发现108

7.4 服务部署测试110

7.4.1 编写测试类110

7.4.2 服务打包部署111

7.4.3 运行测试113

7.5 使用Consul与Actuator实现健康检查113

7.5.1 健康检查机制113

7.5.2 健康检查查错思路113

7.6 再学一招:Consul健康检查分类及原理114

第8章 微服务配置管理116

8.1 初识Archaius116

8.1.1 为什么要使用Archaius116

8.1.2 Archaius原理116

8.2 使用Consul-KV实现配置集中管理117

8.3 使用Archaius实现动态获取配置118

8.3.1 搭建项目框架118

8.3.2 创建配置信息读取源120

8.3.3 实现服务启动时读取配置信息122

8.3.4 动态获取配置信息124

8.3.5 将配置信息动态加入Spring属性源的思路125

8.4 再学一招:Archaius关键源码解析125

8.4.1 构造动态属性源125

8.4.2 动态获取属性129

第9章 微服务进程间通信131

9.1 常见的三种服务通信技术131

9.2 创建一个简单的被调用服务132

9.2.1 搭建项目框架132

9.2.2 实现一个简单的被调用接口134

9.3 使用OkHttp实现服务通信136

9.3.1 搭建项目框架136

9.3.2 创建OkHttp调用实体类137

9.3.3 实现服务通信功能138

9.3.4 Spring Boot指定服务启动端口的三种方式140

9.4 使用AsyncHttpClient实现服务通信141

9.4.1 搭建项目框架141

9.4.2 创建AsyncHttpClient调用实体类141

9.4.3 实现服务通信功能142

9.5 使用Retrofit实现服务通信143

9.5.1 搭建项目框架143

9.5.2 创建调用接口并实例化接口143

9.5.3 实现服务通信功能145

9.6 再学一招:Retrofit源码解析145

9.6.1 构造RestAdapter146

9.6.2 初始化RestAdapterBuilder属性148

9.6.3 创建RestAdapter实例151

9.6.4 构造请求方法的接口类152

9.6.5 校验service接口的合法性153

9.6.6 使用动态代理创建对象154

9.6.7 进行请求调用154

9.6.8 获取RestMethodInfo实例156

9.6.9 进行方法调用156

9.6.10 加载RestMethodInfo的剩余属性158

9.6.11 构建请求参数retrofit.client.Request162

9.6.12 利用clientProvider进行真正的调用163

9.6.13 处理响应164

第10章 微服务降级容错165

10.1 初识Hystrix165

10.1.1 为什么要使用Hystrix165

10.1.2 Hystrix工作原理166

10.1.3 Hystrix执行流程168

10.2 使用Hystrix实现服务降级容错169

10.2.1 搭建项目框架169

10.2.2 创建AsyncHttpClient调用实体类172

10.2.3 服务通信框架集成服务降级容错功能173

10.2.4 验证服务降级容错功能175

10.3 搭建Hystrix监控系统178

10.3.1 使用Hystrix-Metrics-Event-Stream发布监控信息178

10.3.2 使用Hystrix-Dashboard展示监控信息179

10.3.3 使用Turbine聚合监控信息181

10.4 再学一招:Hystrix常用配置186

10.4.1 设置配置参数的两种方法186

10.4.2 常见配置项的配置方式186

第3篇 监控部署篇190

第11章 微服务日志系统190

11.1 初识ELK190

11.1.1 为什么要用ELK190

11.1.2 ELK最常用的两种架构191

11.2 搭建ELK系统192

11.2.1 安装配置启动Redis193

11.2.2 安装配置启动Elasticsearch193

11.2.3 安装配置启动Logstash-Shipper195

11.2.4 安装配置启动Logstash-Indexer197

11.2.5 安装配置启动Kibana198

11.3 使用LogbackAppender发送日志199

11.3.1 搭建项目框架199

11.3.2 配置logback.xml文件201

11.3.3 创建LogbackAppender发送日志202

11.3.4 验证日志输出查询功能204

11.4 Kibana常见用法206

11.4.1 日期选择206

11.4.2 自动刷新207

11.4.3 查询语法207

11.5 再学一招:使用Curator定时删除日志208

11.5.1 安装Curator208

11.5.2 配置Curator209

11.5.3 配置crontab定时任务211

11.5.4 验证定时任务211

第12章 微服务全链路追踪系统213

12.1 初识Zipkin213

12.1.1 为什么要使用Zipkin213

12.1.2 Zipkin工作流程214

12.1.3 Zipkin数据模型216

12.1.4 Zipkin工作原理216

12.2 使用Zipkin搭建全链路追踪系统218

12.3 使用Brave+AsyncHttpClient实现全链路追踪220

12.3.1 搭建项目框架220

12.3.2 使用服务端拦截器补充追踪信息222

12.3.3 使用客户端拦截器创建、销毁追踪信息226

12.3.4 使用Zipkin-webUI查询链路追踪信息228

12.4 使用MySQL持久化追踪信息230

12.4.1 创建三张追踪信息表230

12.4.2 使用Brave-MySQL存储追踪信息233

12.5 使用Brave-OkHttp实现全链路追踪233

12.5.1 搭建项目框架234

12.5.2 使用服务端与客户端拦截器收集追踪信息236

12.6 再学一招:Brave关键源码解析239

12.6.1 span的生命周期239

12.6.2 使用reporter创建span240

12.6.3 使用collector收集span245

12.6.4 使用collector发送span247

第13章 微服务持续集成与持续部署系统251

13.1 初识持续集成与持续部署系统251

13.2 系统总体架构252

13.2.1 初识GitLab252

13.2.2 初识Jenkins253

13.2.3 初识Docker-Regsitry253

13.3 持续集成与持续部署系统工作原理253

13.3.1 使用jar包部署项目的整体流程253

13.3.2 使用Docker镜像部署项目的整体流程253

13.4 搭建持续集成与持续部署系统254

13.4.1 安装启动Docker254

13.4.2 安装配置启动GitLab255

13.4.3 安装启动Jenkins257

13.4.4 配置Jenkins全局信息与安装插件259

13.4.5 安装配置启动Docker-Registry260

13.5 使用jar包方式部署服务261

13.5.1 搭建项目框架261

13.5.2 使用GitLab创建组和项目263

13.5.3 使用GitLab管理代码266

13.5.4 使用Jenkins编译打包服务267

13.5.5 使用webhook实现服务的持续集成270

13.5.6 使用Jenkins+Shell实现服务的持续部署272

13.6 使用Docker镜像方式部署服务276

13.6.1 搭建项目框架276

13.6.2 编写Dockerfile文件创建镜像278

13.6.3 通过Jenkins+Shell使用镜像实现持续部署279

13.6.4 分析Jenkins构建日志280

13.7 再学一招:Docker常用命令281

热门推荐