1 微服务介绍 1
1.1 什么是微服务架构 2
1.2 垂直应用与微服务 2
1.3 实现一个最简单的微服务框架 3
1.3.1 公共接口 4
1.3.2 服务端 4
1.3.3 客户端 7
1.3.4 完善框架 8
1.4 主流微服务框架介绍 9
1.4.1 Dubbo 9
1.4.2 Spring Cloud 10
2 模块拆分 12
2.1 拆分逻辑 13
2.2 单模块 14
2.3 基础模块 14
2.4 复杂模块 15
3 Spring Boot 16
3.1 目录结构 17
3.2 主要文件 18
3.3 编辑器集成 18
4 Dubbo 20
4.1 注册中心 21
4.2 接口工程 22
4.3 服务端 23
4.4 消费方 28
4.5 网关 30
4.6 监控中心 33
4.7 服务管理 35
4.8 负载均衡 36
4.9 服务降级 37
4.10 集群容错 38
5 Spring Cloud 40
5.1 注册中心 41
5.2 注册服务 44
5.3 调用服务 45
5.3.1 Ribbon 46
5.3.2 Feign 49
5.4 Zuul网关 51
5.5 Hystrix 断路器 54
5.5.1 Ribbon 54
5.5.2 Fegin 57
5.6 服务监控 58
5.7 应用监控 61
5.8 熔断器监控 62
5.8.1 单应用的熔断数据 63
5.8.2 使用Turbine聚合数据 64
5.8.3 Cloud Admin整合Turbine 65
5.9 统一管理配置文件 66
6 数据持久化 70
6.1 Spring Data MySQL 71
6.1.1 依赖与配置 71
6.1.2 实体映射 72
6.1.3 Repository 76
6.1.4 JdbcTemplate 79
6.1.5 事务管理 80
6.2 Spring Data MongoDB 81
6.2.1 依赖与配置 81
6.2.2 实体映射 82
6.2.3 Repository 83
6.2.4 MongoTemplate 84
6.3 Spring Data ElasticSearch 85
6.3.1 基本概念 85
6.3.2 安装与运行 86
6.3.3 基于HTTP交互 87
6.3.4 配置分词器 91
6.3.5 依赖与配置 94
6.3.6 实体映射 94
6.3.7 Repository 95
6.3.8 ElasticsearchTemplate 96
6.4 TCC 分布式事务 98
6.5 Spring Data Redis 100
6.5.1 安装运行 100
6.5.2 依赖与配置 101
6.5.3 缓存支持 102
6.5.4 RedisTemplate 106
6.5.5 全局锁 107
7 表单验证 110
8 定时任务 113
8.1 Spring Task 单机定时任务 114
8.2 Cron 表达式 114
8.3 QuartZ 分布式定时任务 116
9 分布式会话 122
10 消息队列 124
10.1 安装及配置RabbitMQ 125
10.2 配置及使用 128
11 构建Web应用 130
12 异常处理 133
13 安全认证 139
13.1 OAuth2.0 协议介绍 140
13.2 shouquan模式 141
13.3 在Dubbo中使用OAuth 2.0 142
13.4 在Spring Cloud 中使用OAuth 2.0 151
13.4.1 shouquan中心 151
13.4.2 服务模块配置 154
13.4.3 网关配置 157
13.4.4 测试运行 159
14 日志管理 161
14.1 Spring Boot 日志 162
14.1.1 日志格式 162
14.1.2 输出到文件 163
14.1.3 扩展配置 163
14.2 分布式日志管理 166
14.2.1 ELK 搭建 167
14.2.2 Spring Boot 配置 169
15 热部署 171
16 接口文档管理 173
16.1 Dubbo中使用Swagger2 174
16.2 Spring Cloud中使用Swagger2 178
16.2.1 微服务模块配置 179
16.2.2 网关模块配置 181
17 Nexus私库 184
17.1 Nexus 安装 185
17.2 从Nexus私库下载jar包 187
17.3 上传jar包到Nexus私库 189
18 发布系统 191
18.1 Jenkins 安装配置 192
18.2 构建任务 194
19 分布式架构总结 201
· · · · · · (
收起)