目录
微服务技术栈导学
day01
1、认识微服务
(1)服务架构演变
(2)SpringCloud
2、服务拆分及远程调用
(1)服务拆分
(2)服务间调用
3、eureka注册中心
(1)提供者与消费者
(2)远程调用的问题
(3)eureka原理分析
(4)搭建eureka服务
(5)服务注册
(6)服务发现
4、Ribbon负载均衡原理
(1)负载均衡原理
(2)负载均衡策略
(3)饥饿加载
5、Nacos注册中心
(1)认识Nacos
(2)Nacos快速入门
(3)Nacos服务分级存储模型
(4)NacosRule负载均衡
(5)服务实例的权重设置
(6)Nacos环境隔离
(7)Nacos和Eureka的对比
day02
1、Nacos配置管理
(1)统一配置管理
(2)配置热更新
(3)配置共享
(4)搭建Nacos集群
2、Feign远程调用
(1)Feign替代RestTemplate
(2)自定义配置
(3)Feign使用优化
(4)最佳实践
3、Gateway服务网关
(1)为什么需要网关
(2)gateway入门
(3)断言工厂
(4)过滤器工厂
(5)全局过滤器
(6)过滤器执行顺序
(7)跨域问题
day03 Docker
1、初识Docker
(1)什么是Docker
(2)Docker和虚拟机的区别
(3)Docker架构
(4)安装Docker
2、Docker的基本操作
(1)镜像操作
(2)容器操作
(3)数据卷(容器数据管理)
3、Dockerfile自定义镜像
(1)镜像结构
(2)Dockerfile语法
4、Docker-Compose
(1)初识DockerCompose
(2)部署微服务集群
5、Docker镜像仓库
day04 RabbitMQ服务异步通讯
1、初识MQ
(1)同步通讯
(2)异步通讯
(3)MQ常见框架
2、RabbiMQ
(1)RabbitMQ概述
(2)常见消息模型
(3)快速入门
3、SpringAMQP
(1)Basic Queue简单队列模型
(2)Work Queue工作队列模型
(3)发布、订阅模型-Fanout
(4)发布、订阅模型-Direct
(5)发布、订阅模型-Topic
(6)消息转换器
day05 分布式搜索
1、初识elasticsearch
(1)了解ES
(2)倒排索引
(3)es的一些概念
(4)分词器
2、索引库操作
(1)mapping映射属性
(2)索引库的CRUD
3、文档操作
(1)新增文档
(2)查询、删除文档
(3)修改文档
4、RestClient操作索引库
(1)创建索引库
(2)删除索引库
(3)判断索引库是否存在
5、RestClient操作文档
(1)新增文档
(2)查询文档
(3)修改文档
(4)删除文档
(5)批量导入文档
day06 elasticsearch搜索功能
1、DSL查询文档
(1)DSL查询分类
(2)全文检索查询
(3)精准查询
(4)地理坐标查询
(5)组合查询(Function Score Query、Boolean Query)
2、搜索结果处理
(1)排序
(2)分页
(3)高亮
3、RestClient查询文档
(1)快速入门
(2)match查询
(3)精确查询
(4)复合查询
(5)排序、分页、高亮
4、旅游案例
(1)酒店搜索和分页
(2)酒店结果过滤
(3)我周边的酒店
(4)酒店竞价排名
day07 深入elasticsearch
1、数据聚合
(1)聚合的种类
(2)DSL实现聚合
(3)RestAPI实现聚合
2、自动补全
(1)拼音分词器
(2)自定义分词器
(3)自动补全查询
(4)实现酒店搜索框自动补全
3、数据同步
(1)数据同步思路分析
(2)实现elasticsearch与数据库数据同步
4、集群
(1)搭建ES集群
(2)集群职责及脑裂问题
(3)集群故障转移
(4)集群分布式存储
(5)集群分布式查询
day08 微服务保护Sentinel
1、初识Sentinel
(1)雪崩问题及解决方案
(2)服务保护技术对比
(3)Sentinel介绍和安装
(4)微服务整合Sentinel
2、流量控制
(1)快速入门
(2)流控模式
(3)流控效果
(4)热点参数限流
3、隔离和降级
(1)FeignClient整合Sentinel
(2)线程隔离(舱壁模式)
(3)熔断降级
4、授权规则
(1)授权规则
(2)自定义异常结果
5、规则持久化
(1)规则管理模式
(2)实现push模式
day09 分布式事务seata
1、分布式事务理论基础
(1)CAP定理
(2)BASE理论
2、初识Seata
(1)Seata的架构
(2)部署TC服务
(3)微服务集成Seata
3、实践
(1)XA模式
(2)AT模式
(3)TCC模式
(4)SAGA模式
4、高可用
day10 分布式缓存Redis集群
1、Redis持久化
(1)RDB持久化
(2)AOF持久化
2、Redis主从
(1)主从架构
(2)主从数据同步原理
3、Redis哨兵
(1)哨兵的作用和原理
(2)RedisTemplate的哨兵模式
4、Redis分片集群
(1)散列插槽
(2)集群伸缩
(3)故障转移
(4)RedisTemplate访问分片集群
day11 多级缓存(亿级流量)
1、多级缓存意义
2、JVM进程缓存
(1)初识Caffeine
(2)实现进程缓存
3、Lua语法入门
(1)初识Lua
(2)变量和循环
(3)条件控制、函数
4、多级缓存
(1)OpenResty快速入门
(2)请求参数处理
(3)查询Tomcat
(4)Redis缓存预热
(5)查询Redis缓存
(6)Nginx本地缓存
5、缓存同步策略
(1)数据同步策略
(2)Canal
(3)监听Canal
day12 服务异步通讯rabbitmq的高级特性
1、消息可靠性
(1)生产者消息确认
(2)消息持久化
(3)消费者消息确认
(4)消费失败重试机制
2、死信交换机
(1)初识死信交换机
(2)TTL
(3)延迟队列
3、惰性队列
(1)消息堆积问题
(2)惰性队列
4、MQ集群
(1)集群分类
(2)普通集群
(3)镜像集群
(4)仲裁队列
day13 热点面试题及源码分析
1、SpringCloud常见组件有哪些?
2、Nacos的服务注册表结构是怎样的?
3、Nacos如何支撑数十万服务注册压力?
4、Nacos如何避免并发读写冲突问题?
5、Nacos与Eureka的区别有哪些?
6、Sentinel的限流与Gateway的限流有什么差别?
7、Sentinel的线程隔离与Hystix的线程隔离有什么差别?
微服务技术栈导学
day01
1、认识微服务
(1)服务架构演变
(2)SpringCloud
2、服务拆分及远程调用
(1)服务拆分
(2)服务间调用
3、eureka注册中心
(1)提供者与消费者
一个服务既可以是提供者也可以是消费者
(2)远程调用的问题
(3)eureka原理分析
(4)搭建eureka服务
(5)服务注册
(6)服务发现
4、Ribbon负载均衡原理
(1)负载均衡原理
(2)负载均衡策略
(3)饥饿加载
5、Nacos注册中心
(1)认识Nacos
(2)Nacos快速入门
(3)Nacos服务分级存储模型
(4)NacosRule负载均衡
(5)服务实例的权重设置
(6)Nacos环境隔离
(7)Nacos和Eureka的对比
day02
1、Nacos配置管理
(1)统一配置管理
(2)配置热更新
(3)配置共享
(4)搭建Nacos集群
2、Feign远程调用
(1)Feign替代RestTemplate
(2)自定义配置
(3)Feign使用优化
(4)最佳实践
3、Gateway服务网关
(1)为什么需要网关
(2)gateway入门
(3)断言工厂
(4)过滤器工厂
(5)全局过滤器
(6)过滤器执行顺序
(7)跨域问题
day03 Docker
1、初识Docker
(1)什么是Docker
(2)Docker和虚拟机的区别
(3)Docker架构
(4)安装Docker
2、Docker的基本操作
(1)镜像操作
(2)容器操作
(3)数据卷(容器数据管理)
3、Dockerfile自定义镜像
(1)镜像结构
(2)Dockerfile语法
4、Docker-Compose
(1)初识DockerCompose
(2)部署微服务集群
5、Docker镜像仓库
day04 RabbitMQ服务异步通讯
1、初识MQ
(1)同步通讯
(2)异步通讯
(3)MQ常见框架
2、RabbiMQ
(1)RabbitMQ概述
(2)常见消息模型
(3)快速入门
3、SpringAMQP
(1)Basic Queue简单队列模型
(2)Work Queue工作队列模型
(3)发布、订阅模型-Fanout
(4)发布、订阅模型-Direct
(5)发布、订阅模型-Topic
(6)消息转换器
day05 分布式搜索
1、初识elasticsearch
(1)了解ES
(2)倒排索引
(3)es的一些概念
(4)分词器
2、索引库操作
(1)mapping映射属性
(2)索引库的CRUD
3、文档操作
(1)新增文档
(2)查询、删除文档
(3)修改文档
4、RestClient操作索引库
(1)创建索引库
(2)删除索引库
(3)判断索引库是否存在
5、RestClient操作文档
(1)新增文档
(2)查询文档
(3)修改文档
(4)删除文档
(5)批量导入文档
day06 elasticsearch搜索功能
1、DSL查询文档
(1)DSL查询分类
(2)全文检索查询
(3)精准查询
(4)地理坐标查询
(5)组合查询(Function Score Query、Boolean Query)
2、搜索结果处理
(1)排序
(2)分页
(3)高亮
3、RestClient查询文档
(1)快速入门
(2)match查询
(3)精确查询
(4)复合查询
(5)排序、分页、高亮
4、旅游案例
(1)酒店搜索和分页
(2)酒店结果过滤
(3)我周边的酒店
(4)酒店竞价排名
day07 深入elasticsearch
1、数据聚合
(1)聚合的种类
(2)DSL实现聚合
(3)RestAPI实现聚合
2、自动补全
(1)拼音分词器
(2)自定义分词器
(3)自动补全查询
(4)实现酒店搜索框自动补全
3、数据同步
(1)数据同步思路分析
(2)实现elasticsearch与数据库数据同步
4、集群
(1)搭建ES集群
(2)集群职责及脑裂问题
(3)集群故障转移
(4)集群分布式存储
(5)集群分布式查询
day08 微服务保护Sentinel
1、初识Sentinel
(1)雪崩问题及解决方案
(2)服务保护技术对比
(3)Sentinel介绍和安装
需要jdk1.8,并且端口不能冲突
(4)微服务整合Sentinel
2、流量控制
(1)快速入门
(2)流控模式
(3)流控效果
(4)热点参数限流
3、隔离和降级
(1)FeignClient整合Sentinel
(2)线程隔离(舱壁模式)
(3)熔断降级
4、授权规则
(1)授权规则
(2)自定义异常结果
5、规则持久化
(1)规则管理模式
(2)实现push模式
day09 分布式事务seata
1、分布式事务理论基础
(1)CAP定理
(2)BASE理论
2、初识Seata
(1)Seata的架构
(2)部署TC服务
需要下载Seata并配置
(3)微服务集成Seata
3、实践
(1)XA模式
(2)AT模式
(3)TCC模式
(4)SAGA模式
4、高可用
day10 分布式缓存Redis集群
1、Redis持久化
(1)RDB持久化
(2)AOF持久化
2、Redis主从
(1)主从架构
(2)主从数据同步原理
3、Redis哨兵
(1)哨兵的作用和原理
(2)RedisTemplate的哨兵模式
4、Redis分片集群
(1)散列插槽
(2)集群伸缩
(3)故障转移
(4)RedisTemplate访问分片集群
day11 多级缓存(亿级流量)
1、多级缓存意义
2、JVM进程缓存
(1)初识Caffeine
(2)实现进程缓存
3、Lua语法入门
(1)初识Lua
(2)变量和循环
(3)条件控制、函数
4、多级缓存
(1)OpenResty快速入门
(2)请求参数处理
(3)查询Tomcat
(4)Redis缓存预热
(5)查询Redis缓存
(6)Nginx本地缓存
5、缓存同步策略
(1)数据同步策略
(2)Canal
(3)监听Canal
day12 服务异步通讯rabbitmq的高级特性
1、消息可靠性
(1)生产者消息确认
(2)消息持久化
(3)消费者消息确认
(4)消费失败重试机制
2、死信交换机
(1)初识死信交换机
(2)TTL
(3)延迟队列
3、惰性队列
(1)消息堆积问题
(2)惰性队列
4、MQ集群
(1)集群分类
(2)普通集群
(3)镜像集群
(4)仲裁队列
day13 热点面试题及源码分析
1、SpringCloud常见组件有哪些?
2、Nacos的服务注册表结构是怎样的?
3、Nacos如何支撑数十万服务注册压力?
4、Nacos如何避免并发读写冲突问题?
5、Nacos与Eureka的区别有哪些?
6、Sentinel的限流与Gateway的限流有什么差别?
7、Sentinel的线程隔离与Hystix的线程隔离有什么差别?