Skip to content

第七章 微服务简介 v1.0 ​

第一部分 微服务技术栈主要组成 ​

image.png

一、微服务治理 ​

1.主要内容 ​

  1. 注册发现
  2. 远程调用
  3. 负载均衡
  4. 配置管理
  5. 网关路由
  6. 系统保护
  7. 流量控制
  8. 服务授权
  9. 熔断降级
  10. 分布式事务
  11. TCC模型
  12. AT模型
  13. Seata

二、缓存技术 ​

1.主要内容 ​

  1. 缓存穿透、缓存击穿、缓存雪崩
  2. Redis主从复制
  3. 缓存数据同步
  4. 多级缓存分层
  5. Lua脚本
  6. Redis数据结构
  7. SpringDataRedis
  8. OpenResty
  9. Nginx本地缓存
  10. Redis持久化
  11. Redis分片集群

三、搜索技术 ​

1.主要内容 ​

  1. DSL语句
  2. ES集群
  3. RestAPI
  4. 集群脑裂
  5. 竞价排名
  6. 聚合统计
  7. 自动补全
  8. 地理坐标
  9. 拼音分词

四、异步通信 ​

1.主要内容 ​

  1. MQ消息模型
  2. 消息堆积问题
  3. SpringAMQP
  4. 仲裁队列
  5. 消息可靠性
  6. 镜像集群
  7. 延迟队列
  8. 数据持久化

五、DevOps(持续集成) ​

1.主要内容 ​

  1. DockerCompose
  2. Dockerfile
  3. GrayLog
  4. Jenkins
  5. SkyWalking
  6. Docker使用
  7. Kubernetes(K8S)

第二部分 微服务简介 ​

一、微服务架构的演变 ​

image.png

image.png

image.png

image.png

二、微服务结构 ​

1.主要结构 ​

image.png

2.微服务技术对比 ​

3.SpringCloud主要组件 ​

服务注册发现:EureKa、Nacos、Consul

远程服务调用:OpenFeign、Dubbo

服务链路监控:Zipkin、Sleuth

统一配置管理:SpringCloudConfig、Nacos

统一网关路由:SpringCloudGateway、Zuul

流量控制、降级、保护:Hystix、Sentinel

三、服务拆分 ​

1.作用 ​

将原本存在于单个应用中的服务从中拆分出来,一边实现隔离,另一方面实现解耦、彻底分离

2.服务拆分注意事项 ​

  1. 不同微服务不要重复开发相同业务
  2. 微服务数据相互独立,不要访问其他微服务的数据库
  3. 微服务可以将自己的业务暴露为接口,供其他微服务调用
  4. 不同微服务应当有自己独立的数据库