mirror of
https://github.com/CyC2018/Interview-Notebook.git
synced 2026-10-31 19:13:42 +00:00
Update 微服务.md
为面试中常问的小节加上高频标记。
This commit is contained in:
+4
-4
@@ -3,7 +3,7 @@
|
||||
* [微服务](#微服务)
|
||||
* [一、从单体到微服务](#一从单体到微服务)
|
||||
* [服务拆分](#服务拆分)
|
||||
* [二、Spring Cloud](#二spring-cloud)
|
||||
* [二、Spring Cloud](#二spring-cloud) 🔥🔥
|
||||
* [组件](#组件)
|
||||
* [接口与实现](#接口与实现)
|
||||
* [版本](#版本)
|
||||
@@ -13,7 +13,7 @@
|
||||
* [负载均衡策略](#负载均衡策略)
|
||||
* [实例下线后多久能感知](#实例下线后多久能感知)
|
||||
* [注册中心宕机](#注册中心宕机)
|
||||
* [五、网关](#五网关)
|
||||
* [五、网关](#五网关) 🔥
|
||||
* [六、配置中心](#六配置中心)
|
||||
* [七、服务保护与分布式事务](#七服务保护与分布式事务)
|
||||
* [八、链路追踪](#八链路追踪)
|
||||
@@ -50,7 +50,7 @@
|
||||
|
||||
拆分已有的单体时通常逐步进行:先拆变化快、压力大的模块,新功能直接写在新服务中,网关把对应的请求转发给新服务,旧功能再一点点迁出。数据库也是先理清每个模块用到哪些表,消除跨模块的 JOIN 和事务,最后再分库。
|
||||
|
||||
## 二、Spring Cloud
|
||||
## 二、Spring Cloud 🔥🔥
|
||||
|
||||
服务拆分之后,每个服务都要解决同样的问题:去哪里找其它服务的实例、选择哪个实例、配置放在哪里、下游故障时怎么办。Spring Cloud 是一组基于 Spring Boot 的项目,把这些问题抽象成统一的接口和配置方式,具体的实现由不同的项目提供。
|
||||
|
||||
@@ -292,7 +292,7 @@ public class RandomConfiguration {
|
||||
|
||||
所以注册中心宕机不会立刻影响线上的调用,但扩容和发布都无法进行,生产环境中 Nacos 要以集群方式部署。
|
||||
|
||||
## 五、网关
|
||||
## 五、网关 🔥
|
||||
|
||||
外部请求不应该直接访问各个服务:客户端要知道每个服务的地址,每个服务也都要各自做鉴权、限流。网关是所有外部请求的统一入口,负责:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user