第1章 微服务架构与项目设计 1
任务1了解大觅网业务场景 2
任务2了解微服务架构 7
1.2.1软件架构分类 7
1.2.2微服务架构概念 10
任务3了解大觅网架构设计 12
任务4了解大觅网项目管理设计 15
1.4.1代码版本管理设计 15
1.4.2代码规范管理设计 18
1.4.3团队协作管理设计 20
第2章 Spring Cloud初体验 23
任务1了解Spring Cloud 24
2.1.1 Spring Cloud简介 24
2.1.2 Spring Cloud和Spring Boot 24
2.1.3 Spring Cloud体系介绍 25
任务2使用Eureka实现注册中心及注册服务 26
2.2.1 Eureka简介 26
2.2.2编写Eureka Server 26
2.2.3注册微服务到Eureka Server 28
2.2.4为Eureka Server添加用户认证 30
任务3使用Feign实现声明式REST调用 32
2.3.1微服务间接口调用 32
2.3.2接口调用参数 34
任务4使用Hystrix实现微服务的容错处理 38
2.4.1容错 38
2.4.2使用Hystrix处理容错 39
2.4.3容错可视化监控 40
第3章 虚拟化技术Docker+Jenkins 49
任务1安装Docker 50
3.1.1 Docker和虚拟机 50
3.1.2 Docker相关概念 51
3.1.3 Docker运行原理 52
3.1.4在Ubuntu环境中安装Docker 53
任务2使用Docker命令管理Docker 53
3.2.1 Docker镜像操作命令 53
3.2.2 Docker容器操作命令 55
任务3使用docker-compose管理Docker 57
3.3.1 docker-compose介绍 57
3.3.2 docker-compose.yml常用命令 58
3.3.3 docker-compose常用命令 59
任务4使用Docker+Jenkins实现CI 60
3.4.1 Jenkins介绍 60
3.4.2 Jenkins的安装 60
3.4.3 Jenkins的配置 62
3.4.4使用Jenkins配置普通任务 66
3.4.5使用Jenkins Pipeline配置流水线任务 70
第4章 分布式日志处理 73
任务1了解分布式架构下系统的监控问题 74
4.1.1接口监控问题 74
4.1.2日志监控问题 74
任务2使用Sleuth实现微服务跟踪 74
4.2.1微服务项目整合Spring Cloud Sleuth 75
4.2.2 Spring Cloud Sleuth整合Zipkin 76
任务3搭建ELK+Kafka环境 82
4.3.1 Elasticsearch介绍及环境搭建 83
4.3.2 Kibana介绍及环境搭建 86
4.3.3 Logstash介绍及环境搭建 87
4.3.4 Kafka介绍及环境搭建 88
任务4使用ELK+Kafka实现日志收集 89
4.4.1发送日志信息到Kafka 89
4.4.2在Logstash中定义收集规则 91
4.4.3在Kibana中定义规则查询日志 92
第5章 分布式业务实现 97
任务1使用RabbitMQ实现分布式事务 98
5.1.1分布式事务简介 98
5.1.2消息中间件简介 99
5.1.3 RabbitMQ的安装与配置 101
5.1.4使用RabbitMQ实现分布式事务 108
任务2使用Redis-setnx实现分布式锁 114
第6章 分布式部署实现 119
任务1使用Spring Cloud Ribbon实现大觅网服务负载均衡 120
6.1.1 Ribbon简介 120
6.1.2服务消费者整合Ribbon 120
6.1.3负载均衡策略 122
6.1.4通过配置方式更改负载均衡策略 122
任务2使用Spring Cloud Zuul实现大觅网微服务统一网关 123
6.2.1微服务网关介绍 123
6.2.2搭建Zuul微服务网关 124
6.2.3使用过滤器过滤请求 126
任务3使用Spring Cloud Config实现大觅网分布式配置 128
6.3.1编写Config Server 129
6.3.2编写Config Client 131
6.3.3加密解密 132
6.3.4刷新配置 136
6.3.5用户认证 138
第7章 分布式数据存储 141
任务1使用Elasticsearch实现商品全文检索 142
7.1.1 Elasticsearch基础概念 143
7.1.2 Elasticsearch语法 144
7.1.3编写Elasticsearch Java客户端 156
任务2使用Mycat实现水平分库 159
7.2.1 Mycat简介 160
7.2.2 Mycat安装及配置 161
7.2.3实现大觅网水平分库 164
第8章 集成测试 169
任务1使用Sonar对大觅网代码进行规范测试 170
8.1.1配合Jenkins自动检测代码 170
8.1.2 Sonar规则配置 176
任务2使用JMeter进行大觅网压力测试 177
8.2.1了解压力测试相关概念 177
8.2.2使用JMeter进行大觅网接口测试 179
8.2.3 JMeter报告分析 186
任务3使用Issue进行大觅网前后端联调任务管理 190
8.3.1 Issue简介 190
8.3.2使用Issue进行Bug管理 190