第七章 微服务简介 v1.0
第一部分 微服务技术栈主要组成

一、微服务治理
1.主要内容
- 注册发现
- 远程调用
- 负载均衡
- 配置管理
- 网关路由
- 系统保护
- 流量控制
- 服务授权
- 熔断降级
- 分布式事务
- TCC模型
- AT模型
- Seata
二、缓存技术
1.主要内容
- 缓存穿透、缓存击穿、缓存雪崩
- Redis主从复制
- 缓存数据同步
- 多级缓存分层
- Lua脚本
- Redis数据结构
- SpringDataRedis
- OpenResty
- Nginx本地缓存
- Redis持久化
- Redis分片集群
三、搜索技术
1.主要内容
- DSL语句
- ES集群
- RestAPI
- 集群脑裂
- 竞价排名
- 聚合统计
- 自动补全
- 地理坐标
- 拼音分词
四、异步通信
1.主要内容
- MQ消息模型
- 消息堆积问题
- SpringAMQP
- 仲裁队列
- 消息可靠性
- 镜像集群
- 延迟队列
- 数据持久化
五、DevOps(持续集成)
1.主要内容
- DockerCompose
- Dockerfile
- GrayLog
- Jenkins
- SkyWalking
- Docker使用
- Kubernetes(K8S)
第二部分 微服务简介
一、微服务架构的演变




二、微服务结构
1.主要结构

2.微服务技术对比
3.SpringCloud主要组件
服务注册发现:EureKa、Nacos、Consul
远程服务调用:OpenFeign、Dubbo
服务链路监控:Zipkin、Sleuth
统一配置管理:SpringCloudConfig、Nacos
统一网关路由:SpringCloudGateway、Zuul
流量控制、降级、保护:Hystix、Sentinel
三、服务拆分
1.作用
将原本存在于单个应用中的服务从中拆分出来,一边实现隔离,另一方面实现解耦、彻底分离
2.服务拆分注意事项
- 不同微服务不要重复开发相同业务
- 微服务数据相互独立,不要访问其他微服务的数据库
- 微服务可以将自己的业务暴露为接口,供其他微服务调用
- 不同微服务应当有自己独立的数据库