「前所未有!」服务网格与 Envoy Gateway,客户端可用性和弹性双提升,完美演绎 IT 新时代!

深入探索 Envoy Gateway:Backend Routing 后端路由解析应用 在现代微服务架构中,随着服务的增多、架构的复杂性加大,如何高效且灵活地管理请求的流向成为了系统稳定性扩展性的关键之一。Envoy Gateway,作为一个高性能的分布式代理负载均衡器,逐渐成为微服务环境中的重要组件。Envoy 提供了强大的流量路由功能,支持从请求的入口到后端服务的精准流量调度。特别是在后端路由(Backend Routing)方面,Envoy 能够在分布式系统中实现高度定制化细粒度的路由策略。 阅读详情

图片

目录

如何从客户端角度思考服务的可用性和弹性

每个服务都有一个“网关”

以三个九的价格获得五个九的高可用能力:一个真实的案例

服务网格中的客户端负载均衡:超越组件之和

重试

异常检测

断路器

超时

限流

低成本下的高感知可用性

下一步

参考链接


如何从客户端角度思考服务的可用性和弹性

这是一系列关于 Envoy Gateway 价值的文章之一,该网关已经达到了 1.0 版本的发布里程碑,可以投入生产使用。

在讨论可用性和弹性时,我们通常是从基础设施和服务的角度来探讨的。我们很少考虑是否可以在客户端采用某种方法来提高后端服务的“实际感知可用性”(即在客户端测量到的服务的可用性)。这主要是因为我们在大部分情况下都无法控制客户端与服务的交互方式。但实际上我们有办法对客户端和服务之间的交互进行控制,从而提高客户端对服务的“实际感知可用性”。

本文将讨论服务网格如何通过下面这六种方式提高客户端对服务的“感知可用性”,从而增强系统的整体弹性:

  1. 1. 客户端负载均衡

  2. 2. 重试

  3. 3. 超时

  4. 4. 断路器

  5. 5. 异常检测

  6. 6. 限流

本文将依次介绍每种功能及其提供的价值。但需要注意的是,虽然每种功能单独提供了一些好处,但只有它们共同作用,才能为真正地为我们的系统提高可用性。

每个服务都有一个“网关”

我们可以在后端服务的入口或 API 网关处控制“客户端”的行为,通过使用网关保护我们的内部系统免受外部发生的任何异常情况的影响。在该网关处,我们可以实现诸如负载均衡、重试、超时、限流等众所周知的模式。随着服务网格的引入,我们在基础设施中为每个服务都都部署了一个“网关” —— 服务网格的边车。边车不仅在服务器端起作用,提供(m)TLS 和策略执行点。它还在客户端(调用者)端提供了重要的功能。由于网格提供了集中式控制,服务所有者可以轻松地为调用其服务的客户端设置默认行为。因此,我们不再只是从基础设施故障域、数据库影响范围等服务的角度来讨论系统的弹性,还可以从客户端如何与服务器通信的角度对此进行讨论。

边车为客户端带来的第一个最重要的功能是客户端负载均衡。边车中有客户端可能要与之通信的每个服务实例的信息,在客户对外通信时直接在这些服务实例之间进行流量负载均衡。该模式中流量直接从客户端到服务器,而无需通过中央负载均衡器(如F5)这样的中间人。同时,由于我们在客户端处理负载均衡,网格还可以提供一系列其他强大的工具。

以三个九的价格获得五个九的高可用能力:一个真实的案例

为了提供一个采用这些工具改善应用程序的感知可用性能力的真实证据,可以看一下我在上一个雇主那里工作时的一个服务。该服务主要方法对外宣称的 SLA 是五个九:在保持 P90 时延为 10ms 以内的同时可用性达到 99.9995%。(习惯于使用高可用性系统的人会意识到实现这种稳定运行时间所需的成本。对于不了解的人,我使用的经验法则是:“从1000美元开始,每增加一个9,就增加一个零”。当然,短时间内也许可以更便宜,但如果要长时间(多年)维持该可用性稳定运行,那么这大概就是要考虑的正确成本。)

与其通过构建昂贵的服务器端的能力来提供这种高可用性,我们可以以较低的成本构建一个“厚客户端”来实现相同的高可用性能力,该“厚客户端”采用服务网格的边车来提供这些能力。使用该客户端的重试、超时、异常检测、断路器——以及一些高级模式,如请求对冲¹——我们能够交付一个感知可用性满足五个九目标的系统,而后端本身则只需提供了略高于三个九(99.95%)的可用性。由于我们能够隔离我们的故障域,结合智能的客户端行为,我们可以使请求的失败“看起来”是不相关的。

服务网格中的客户端负载均衡:超越组件之和

客户端负载均衡意味着客户端知道它们可以与之通信的所有可能的后端,并且可以在和某服务通信时选择该服务的任意一个实例。我们可以使用各种不同的算法来选择负载均衡的服务器端点。在这个基本功能上,我们可以建立我们列表中的其他能力。

重试

重试有助于减轻瞬时故障的影响。在后端存在不稳定性、不可靠网络、服务器过载和故障等情况下,重试使我们有能力尝试使用不同的后端来处理同一请求,在各个后端的故障是不相关的情况下,重试可能成功。Envoy 会避免将重试请求发送到任何已经失败的后端上——在部署了足够多的后端的情况下,Envoy 会保证重试请求会发送到一个新的后端服务。然而,盲目地重试也会导致问题,下面的两个功能可以帮助解决这个问题。

异常检测

异常检测是一种被动的服务健康检查,异常检测观察每个服务实例如何响应来自客户端的请求,并标记那些与其他实例相比表现不佳的实例(例如,连续返回错误或反复超时的实例)。如果一个实例持续表现不佳,则将其从活动负载均衡实例池中移除——换句话说,Envoy 将暂时停止向其发送流量。对于异常的实例, Envoy 采用下面的策略判断其状态是否恢复:Envoy 将逐步尝试向先前表现不佳的实例发送流量,以查看它们是否恢复正常。如果恢复正常,则将被放回到活动负载均衡池中,重新参与正常的流量分发。

当我们将异常检测与重试结合在一起时,对于单个请求,我们可以避免向已知的异常实例发送重试;通过汇总分析所有请求,客户端可以了解每个实例的健康状况,并更倾向于向行为良好的实例发送流量。

断路器

断路器有助于限制每个客户端到每个后端的最大并发数量——由于存在正在进行的重试,使用断路器来避免由于大量重试而导致的级联故障至关重要!断路器限制并发,包括连接的生存时间、客户端和每个后端服务器之间的最大 TCP 连接数、每个后端服务器上允许的最大 HTTP 请求数量等等。当一个服务实例触发断路器时,它会触发该端点的异常检测,将其移出活动负载均衡池。

因此,当我们将重试、异常检测和断路器三者结合在一起时,我们得到了一个强大的客户端,可以继续将流量转发到正常工作的后端,并避免异常的后端,同时不会因为超载系统而导致其他故障。

超时

大量的重试也会对系统产生更重的资源负担——即使服务端失败了,接受和处理请求也会消耗服务端的资源!因此,限制系统的行为非常重要:不仅可以减少用户可能遇到的最坏延迟,还可以避免太多请求导致的资源消耗(当请求超时时,Envoy 可以选择执行关闭到服务器的连接等操作,表示应该停止请求“浪费”的工作)。超时通过限制客户端等待服务器响应的时间(总体和每次重试)来限制消耗的系统资源。一旦超时时间到达,Envoy 将关闭连接并向调用方返回超时错误,释放客户端和服务器端的资源。

限流

超时有助于限制我们在任一请求上花费的资源,限流则有助于限制系统中同时存在的请求总数。我们可以将超时和重试看作控制的深度(为任一请求等待/支付的成本),而将限流看作控制的宽度(某一时刻的服务总量)。限流制旨在保护服务器不会被大量并发的客户端压垮,而断路器则有助于保护服务器不会被特定的单一客户端压垮。

可以将限流视为保护服务器的共享资源免受过载的影响,而断路器则保护服务器的每个单个实例免受过载的影响。

Envoy 支持进行本地限流,每个 Envoy 实例跟踪其看到的请求并应用速率限制。这在将 Envoy 作为入口网关使用时是非常有用的。Envoy 也支持“全局”限流,其限流的额度由所有 Envoy 实例共享。全局限流需要部署一个用于存储速率限制的 Redis 实例,以及一个位于其前面的限流服务器。Tetrate Enterprise Gateway for Envoy (TEG)²—Tetrate 针对 Envoy Gateway³ 的企业版本中提供了全局限流所需的所有组件,并以 helm chart 的方式进行发布。

当你的服务是无状态服务时,通常情况下,你不需要引入速率限制及其所需要的额外机制就能达到很好的效果(无状态服务具有较好的伸缩性,如果一个实例被过多的请求所淹没,你可以在短时间内简单地增配更多实例)。

低成本下的高感知可用性

通过本文的介绍,希望您能清楚地理解为什么我们需要一起讨论所有这些功能,而不只是是单独讨论其中任何一个。完整考虑到您系统中的不同故障模式和资源约束,并构建一套全面的客户端策略——结果是以较低的成本获得显著提高的客户端感知可用性。

下一步

Envoy Gateway (EG)³ 是由 Envoy 社区驱动的一个项目,旨在简化 Envoy 的使用和操作,使其成为网关的首选。它专注于易用性,让常见用例变得简单,并利用 Kubernetes Gateway API⁴ 来管理 Envoy 和对外暴露应用。Tetrate 协助启动了 EG 项目并持续对其进行大量投入。

Tetrate 提供了一款企业级的 Envoy 网关分发产品——Tetrate Enterprise Gateway for Envoy ——您可以立即开始使用。欢迎查看文档以了解更多信息并试用⁵。

参考链接

  1. 1. https://grpc.io/docs/guides/request-hedging

  2. 2. https://tetrate.io/tetrate-enterprise-gateway-for-envoy

  3. 3. https://gateway.envoyproxy.io

  4. 4. https://gateway-api.sigs.k8s.io

  5. 5. https://docs.tetrate.io/envoy-gateway

  6. 6. https://tetrate.io/blog/client-side-availability-and-resiliency-with-envoy-gateway

Triton+KServe+Envoy构建高可靠AI模型服务架构 模型服务化是机器学习工程落地的核心环节,其本质是将离线训练的静态模型转化为具备可观测性、弹性伸缩故障自愈能力的在线微服务。关键技术原理涵盖模型运行时管理(如Triton的GPU实例隔离动态批处理)、服务编排(KServe的Kubernetes原生声明式部署)以及业务网关治理(Envoy的语义路由熔断降级)。该架构显著提升推理吞吐、降低P99延迟,并支撑金融风控、电商推荐等高可用场景。本文聚焦生产级模型服务的分层设计、硬核配置实战排障,覆盖从ONNX导出、config.pbtxt调优到金丝雀发布实时 阅读详情

相关推荐

大模型服务栈中的‘零化层’:如何识别应对架构级抽象消失

在大模型工程实践中,‘服务层’并非永恒抽象,而是随底层模型能力跃迁而动态演化的可测量实体。当Embedding计算、上下文路由等原本独立部署的中间组件因模型原生支持而失去存在必要时,其调用量、连接数、内存占用日志活性会同步坍缩至趋近于零——即‘Going to Zero’现象。这种变化不触发错误告警,却深刻影响延迟、资源利用率弹性策略设计。它揭示了AI基础设施中新型技术债的本质:非缺陷,而是过时的精良设计。本文基于金融、医疗、SaaS产线真实数据,聚焦可观测性指标联动分析、TCP层调用链断裂验证及HTT

duiker 394

【信息科学工程学】计算机科学自动化-——第十五篇云计算 12 公有云里的“多Region + 多AZ“ 02 运营算法01

算法逐步思考推理思考(含数学方程式、对象、资源、任务、进程/协程/线程及对应的代数、约束、目标函数/传递函数/依赖函数、参数及参数的数值范围及边界条件、逐步推理的数学方程式列表、上下文切换、并发/串行/随机/乱序/顺序)算法逐步思考推理思考(含数学方程式、对象、资源、任务、进程/协程/线程及对应的代数、约束、目标函数/传递函数/依赖函数、参数及参数的数值范围及边界条件、逐步推理的数学方程式列表、上下文切换、并发/串行/随机/乱序/顺序)云厂商提高闲置资源利用率。算法复杂度为O(N),N为实例数量。

weixin_49199313的博客 206

AI推理架构的‘零层革命’:删除中间件如何提升性能确定性

在大模型推理基础设施中,‘抽象层’常被默认为必要组件,但其本质是应对硬件异构、精度分裂可观测性缺失的历史妥协。随着H100等统一架构GPU普及、Triton等编译器实现运行时kernel融合、以及毫秒级GPU指标采集成熟,中间路由层正从‘调度必需’退化为‘确定性障碍’。技术价值在于将模糊的运行时决策转化为静态可验证的编译期优化客户端显式调度,显著降低延迟抖动、提升GPU利用率稳定性,并释放运维心智带宽。典型应用场景包括LLM私有集群部署、SRE主导的推理服务治理升级,以及AI基础设施成本精细化管控——当

weixin_33778544的博客 375

跟我学EnvoyGateway:HTTP路由管理

HTTPRoute资源允许用户通过匹配HTTP流量并将其转发到Kubernetes后端来配置HTTP路由。目前,Envoy Gateway唯一支持的后端是Service资源。本文将展示如何基于主机、标头路径字段路由流量,并将流量转发到不同的Kubernetes服务。如需深入了解HTTP路由,请参考Gateway API文档。

进击的Blazor 1572

Envoy Gateway深度解析:构建下一代云原生流量管理平台

Envoy Gateway作为Envoy Proxy的官方管理平面,通过Kubernetes Gateway API提供声明式配置能力,正在重塑云原生时代的流量管理范式。本文将带你深入理解其技术架构、核心功能生产实践。 ## 一、技术价值解析:为什么Envoy Gateway是未来之选 在微服务架构日益复杂的今天,传统的API网关面临着配置繁琐、扩展性差、运维成本高等挑战。Envoy Gat

gitblog_00873的博客 459

网易数帆 Envoy Gateway 实践之旅:坚守 6 年,峥嵘渐显

服务网格成熟度不断提升,云原生环境下流量处理愈发重要, Envoy Gateway 项目于近日宣布开源,“旨在大幅降低将 Envoy 作为 API 网关的使用门槛”,引发了业界关注。2018 年 11 月,Envoy 成为 CNCF 毕业项目,开始作为一款高性能数据服务代理软件为从业者所知,但此后两三年,国内 API 网关实践中,选型 Envoy 仍是一条较为孤独的道路...

NetEaseResearch的博客 1530

虚拟机上部署Envoy Gateway:(一)创建虚拟机

参考链接:http://t.csdn.cn/0MJh5 (1)生成硬盘镜像文件: 格式:raw或qcow2 # qemu-img create -f raw fdisk.img 10G # qemu-img info fdisk.img (2)编写xml配置文件,这一步在后面做详细介绍 (3)创建并运行虚拟机 # sudo apt-get install qemu-kvm # virsh define vm0.xml //导入虚拟机配置 # virsh start vm0 //开启vm0

知行合一 1885

ML模型服务化实战:可观测性、弹性伸缩灰度发布

机器学习模型服务化是将训练完成的模型部署为稳定API的关键环节,其核心在于突破Notebook环境的确定性幻觉,应对真实数据流中的schema变更、缺失值、特征漂移等混沌问题。技术原理上需构建三层防御体系:API网关契约校验、输入适配器(Adapter)兼容处理、模型轻量推理;工程价值体现在保障业务连续性——如凌晨高负载下仍返回带trace_id的响应、支持秒级回滚精准AB测试。典型应用场景包括电商实时推荐、金融反欺诈API、工业预测性维护服务等。本文聚焦生产就绪(Production-Ready)模型服

congxian2511的博客 352

【信息科学工程学】【运营科学】第二篇 C4信息通信网络运营 (C4) ——数据中心网络运营06

13 | 司法诉讼 | 原告律师 | 争取解优势 | 证据披露的序贯博弈 | 策略性证据释放 | 持有证据集E = {强证据e_s, 中证据e_m, 弱证据e_w}。设公众原有认知人格向量为 Pold​​=(p1​,p2​,...,pk​), 其中p_i为负面特质(如“不敬业”)。危机后, 通过行为序列 {At​}宣传, 将公众认知向新向量 Pnew​​引导, 使得在关键维度上, Pnew​​ Pold​​的余弦相似度降低, 并一个正面的、可接受的“原型”(如“浪子回头”、“慈父”)对齐。

weixin_49199313的博客 1284

生产级机器学习服务架构:从模型部署到稳定运行

机器学习模型部署不是简单封装predict函数,而是构建具备可观测性、弹性伸缩故障自愈能力的生产级服务。其核心在于将模型视为有生命周期的微服务组件,依托Kubernetes实现资源隔离、健康探针驱动的自动恢复、标准化指标采集(如P95延迟、错误率)及特征服务联动保障。关键技术价值体现在降低人工运维依赖、支撑千万级日请求、应对数据漂移上游变更等真实场景挑战。典型应用覆盖金融风控、电商推荐IoT预测等领域,尤其适用于已掌握模型训练但面临上线稳定性难题的中级ML工程师。

aijia7039的博客 607

【信息科学工程学】【安全领域】第八十三篇 云安全解决方案02

企业中“搞人”“搞事情”常见问题的分析框架。我将选取4个典型场景,每个场景都从实际管理现象出发,逐步推导出数学模型、参数设定及关联知识。

weixin_49199313的博客 246

模型服务化实战:gRPC+特征服务+可观测性闭环

机器学习模型从开发到生产的关键跃迁,本质是工程范式的升级——不再将模型视为孤立API,而是纳入分布式系统进行可编排、可监控、可追溯的全生命周期管理。其核心原理在于解耦训练推理逻辑、统一特征计算契约、构建端到端链路追踪,并以黄金指标驱动自动化响应。技术价值体现在稳定性提升(如gRPC降低42%内存占用)、故障定位提速(分钟级下钻至特征漂移或时间语义错配)、以及业务效果可持续(AUC波动收敛至±0.005)。典型应用场景包括金融实时风控、工业预测性维护电商毫秒级推荐。本文聚焦模型服务化落地中最具实操挑战的三

weixin_30621711的博客 313

初创公司该不该上Kubernetes?三笔账算清再决定

Kubernetes(K8s)作为云原生核心编排平台,其本质是将基础设施抽象为可编程对象集合,而非简单的容器部署工具。它依赖成熟的工程实践——包括声明式配置管理、可观测性体系、GitOps发布流程自动化运维能力——才能释放弹性伸缩、多环境一致、服务网格等技术价值。对大多数处于PMF验证期的初创团队而言,过早引入K8s易导致资源错配、故障放大隐性成本失控;而DigitalOcean托管K8s(DOKS)虽降低集群运维门槛,却无法替代团队在监控、安全、发布、排障等维度的能力补足。本文聚焦创业阶段真实约束,解

weixin_30374009的博客 320

【信息科学工程学】【通信工程】计算机科学自动化——第二百三十三篇 云NaaS服务 系列二01

国家骨干网(含核心网、IP骨干网、OTN骨干网)/城域网【含3G/4G/5G接入网/PON接入网/OTN接入网+OTN/IP城域网+其他】/中心云(多//单Region+多AZ/AZ/单AZ)+边缘DC+边缘计算节点+端计算节点包括IoT传感器、移动终端、CPE设备。通过5G NR(n78频段,带宽100MHz,子载波间隔30kHz)或GPON(下行2.5Gbps,上行1.25Gbps)接入。本地缓存小于10GB,主要用于临时数据暂存。位于地市级机房,部署MEC服务器(Intel Xeon Platin

weixin_49199313的博客 1225

01-Docker入门核心概念

要真正理解Docker,我们不能仅仅停留在"它是一个工具"的层面。任何一项技术的诞生都不是凭空而来的,它是对前人智慧的继承发展,是对现实问题的回应。容器化技术同样如此——它有着超过四十年的技术积淀,经历了从chroot到LXC,再到DockerKubernetes的漫长演进。本章将带你穿越时光,梳理容器化技术的发展脉络,让你明白Docker为什么会出现在这个时代,以及它解决了前人没有解决好的哪些问题。软件交付方式的演进,本质上是人类对计算资源利用率管理效率不断追求的过程。我们可以将这个过程分为三个主要

Na2SiO3Glue的博客 626

【信息科学工程学】计算机科学自动化 第二百三十三篇 凤凰架构01

编号类型领域系统软件/硬件或系统集成方案及系统架构模块子模块函数名称/算法名称算法的数学分析及计算机体系架构及数据结构算法详细设计及参数列表及数值范围设计关联知识1共识算法分布式基石状态机复制架构:Proposer/Acceptor/Learner 多节点角色模型,基于操作转移(Operation Transfer)分布式共识PaxosPaxos 协议(Prepare/Promise/Accept/Accepted 两阶段)数学基础:多数派(Quorum)投票,基于鸽巢原理保证 W+R>N 时读写集合必有

weixin_49199313的博客 175

【信息科学工程学】【数据中心】 第七篇 智算中心CLOS组网整体设计

区域主要功能网络要求技术选型安全等级可用性要求训练区​大规模AI模型训练,分布式计算超高带宽(100G+),超低延迟(<1ms),无损网络RoCEv2,PFC,DCQCN,多路径P4(最高)99.99%推理区​实时AI推理,模型服务低延迟(<10ms),高可用,弹性扩展智能负载均衡,服务网格,容器网络P3(高)99.999%公共服务区​统一认证,API网关,数据服务多租户隔离,安全防护,弹性带宽VXLAN,EVPN,微隔离P3(高)99.99%存储区​高性能存储,数据湖超高带宽,低延迟,高IOPSNVMe-

weixin_49199313的博客 1304

生产级机器学习服务:从模型部署到高可用运维实战

机器学习模型部署不是简单封装predict函数,而是构建具备可观测性、弹性伸缩故障自愈能力的生产级服务。其核心在于突破Jupyter到生产环境的范式断层,解决资源隔离、动态批处理、模型版本治理、特征实时供给等关键工程问题。以Triton推理服务器Feast特征服务为代表的云原生AI基础设施,通过标准化接口、GPU原生调度上下文感知执行,显著提升吞吐稳定性。在金融风控、电商推荐等低延迟高可靠场景中,该架构支撑日均千万级请求,P99延迟稳定在200ms内,并实现秒级灰度发布自动降级。本文聚焦真实世界中

weixin_30420305的博客 355
上一篇: 敢不敢挑战?看完这篇 Python 学习攻略不成大牛就请我退出 IT !
下一篇: “惊艳登场!清华教授12小时Python马不停蹄,400集授课势如破竹!“
充电君
博客等级 码龄3年 2773粉丝 65原创
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

充电君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值