DevOps专业术语
Service Mesh
服务网格 · 给微服务之间的通信加一层智能管家
容器/K8s网络
SERV
- 定义
- Service Mesh是DevOps领域的专业术语。Service Mesh 在微服务之间插入一层透明的代理(Sidecar),统一处理服务发现、负载均衡、熔断、重试、mTLS 加密和可观测性,让业务代码不用关心网络通信细节。
最后更新:2026-03-18
什么是Service Mesh?
Service Mesh 在微服务之间插入一层透明的代理(Sidecar),统一处理服务发现、负载均衡、熔断、重试、mTLS 加密和可观测性,让业务代码不用关心网络通信细节。
- Sidecar 代理透明拦截服务间通信
- 统一处理负载均衡、熔断、mTLS
- Istio 和 Linkerd 是主流实现
Service Mesh详解
Service Mesh 通过在每个服务旁部署一个 Sidecar 代理(通常是 Envoy),拦截所有进出流量。控制平面(如 Istio)统一管理这些代理的配置。Service Mesh 解决了微服务架构中的通信复杂性,但也引入了额外的资源开销和运维复杂度。对于服务数量少于 10 个的团队,Service Mesh 可能是过度设计。
Service Mesh的应用场景
正式定义
在微服务间插入透明代理层统一管理服务通信的基础设施
应用场景
- 微服务间的安全通信(mTLS)
- 流量管理和灰度发布
- 服务间调用的可观测性
常见误区
- Service Mesh 不是所有微服务都需要,小规模可能过度设计
- Service Mesh 有性能开销,每个请求多经过一层代理
- Sidecar 模式不是唯一选择,也有 Sidecar-less 方案
实际案例
📌 Istio 的采用
Istio 是最流行的 Service Mesh 实现,被 Google、IBM 等大厂采用,但其复杂性也催生了 Linkerd 等更轻量的替代方案。
Service Mesh的参考来源
关于Service Mesh的常见问题
- Service Mesh 解决什么问题
- 将服务间通信的复杂性(负载均衡、重试、熔断、mTLS、可观测性)从业务代码中剥离到基础设施层。
- 什么时候需要 Service Mesh
- 微服务数量多、需要统一的流量管理和安全策略时,少量服务的简单架构通常不需要。