加载中...
服务网格是一层专门处理服务间通信的基础设施,通过为每个服务注入代理来统一管理流量、安全与可观测性,让业务代码无需关心网络细节。它是云原生微服务的重要架构模式。

| 模式类别 | 云原生架构 |
| 数据平面 | 边车代理 |
| 控制平面 | 集中配置下发 |
| 代表实现 | Istio、Linkerd |
| 治理流量 | 东西向 |
服务网格模式(Service Mesh)是一种用于管理微服务间通信的架构模式,它在应用之外引入一层透明的网络基础设施,负责服务发现、负载均衡、加密、重试和监控,使这些横切能力从业务代码中剥离出来。
当微服务数量增长到数十上百个时,服务间调用的可靠性、安全和观测就成为难题。如果让每个服务自己实现这些逻辑,会造成重复且难以统一。服务网格的思路是在每个服务实例旁部署一个网络代理,所有进出流量都经过它,由代理统一实施策略。这些代理构成数据平面,再由集中的控制平面下发配置。
该模式适用于大规模、多语言的微服务系统,尤其在 Kubernetes 环境中。代表性实现包括谷歌与 IBM 等联合发起的 Istio,以及 Linkerd。当需要统一实现零信任安全、精细化流量灰度或全链路观测时,服务网格是常见选择。
问:服务网格和 API 网关有何区别?答:API 网关处理南北向流量,即外部客户端到系统的入口调用;服务网格主要治理东西向流量,即系统内部服务之间的相互调用,二者常配合使用。
问:引入服务网格有什么代价?答:每个请求多经过一层代理会带来额外延迟和资源开销,同时控制平面与运维的复杂度上升,因此小规模系统未必需要,应权衡收益后再引入。

| 模式类别 | 云原生架构 |
| 数据平面 | 边车代理 |
| 控制平面 | 集中配置下发 |
| 代表实现 | Istio、Linkerd |
| 治理流量 | 东西向 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧