详解微服务应用灰度发布最佳实践

作者:子丑

本次分享是站在 DevOps 视角的灰度发布实践概述,主要内容包括以下四个方面:

第一,灰度发布要解决的问题;

第二,灰度发布的四种典型场景;

第三,如何把灰度发布融入到应用的研发流程中,即把灰度发布与 DevOps 工作融合;

第四,对于外部流量灰度场景,演示如何通过工具将其落地。

灰度发布想解决什么问题

1、传统软件研发的需求交付

在早期的金融、电信等软件研发时,是不存在灰度发布的概念的,因为他们大多是全量上生产,测试过程耗时很长,且测试的单元不是各个微服务,而是整个的系统,以保证业务到达生产阶段后要尽可能的安全,不产生安全风险。在这种情况下,当业务到达生产阶段后,要回退或撤销成本很高也很难实现。

因此,在传统软件的研发过程中,开发者大量的心智负担在于如何保证新版本进入生产阶段后风险足够低。

2、微服务架构下典型的需求交付流程

在微服务架构下,多数开发者工作于 Web 应用的研发场景,其需求的交付过程已经产生了巨大的变革。交付的单元变小,一次交付往往是一个或几个小需求,通常仅涉及到几个应用的改造,且这些改造无需同时上线,可以按需部署。如下图所示:

图片

在收到业务方的需求后,经过拆解发现有三个应用需要改造,且这三个应用会分别提交代码、开发测试、生产发布,期间还会存在灰度的环节,即提前将线上应用流量打过来,检查版本是否存在问题。如果没有问题,即部署该应用。当三个应用都部署成功后,开启特性开关,业务需求就对用户可见了。

相对于传统软件研发,尤其是金融和电信的场景,微服务架构下典型的需求交付最大的区别在于有了能够小范围真实验证的机制,且交付单位较小,风险可控。

3、进行灰度测试的必要性

线下测试很难覆盖线上的所有场景,即便是测试设计得非常完善,但仍旧会有差别,简单来说,线下测试与线上至少存在四个方面的不同。

图片

第一,配置不同。线下环境与线上环境的应用版本保持一致不难,但配置方面往往存在差异,如服务规格、调试开关等。

第二,数据不同。线上的数据更真实、更丰富,场景也更多样。比如做网络开发,即使在线下模拟了各种各样的场景,但在线上可能还会出现问题。

第三,依赖不同。依赖的外部服务,比如某些金融软件会依赖人行的接口,这种情况线下环境无法满足,必须使用模拟接口。

第四,负载不同。线上负载更高,且波动性的特征也更真实。如某个时间点产生突增流量,流量峰谷值不同。在线下环境,考虑到资源成本,一般负载较低,高负载的压测会单独考虑。而压测时,场景的覆盖度也会比正常测试有所降低。

图片

由于线下、线上环境存在的差异,线下测试很难覆盖线上的所有场景,我们需要通过灰度发布或线上测试弥补线下测试的不足,其本质是为了降低开发者的心智负担。

4、判断是否要进行灰度验证的参考条件

但是否真的需要灰度测试仍需要从业务场景等方面进行多番考虑。

图片

第一,我们是否允许做线上灰度验证,比如对于某些有明确监管要求的行业,无法使用线上灰度验证。

第二,我们是否确实需要做线上灰度验证。因为线上线下的不一致无法消除,且成本较高,若在考虑成本的基础上,认为不进行灰度验证带来的风险可以接受,则可以不做灰度验证;

第三,我们是否有条件做线上灰度验证,即是否有自主运维的能力。此外,若验证的请求量非常低,服务访问量也很少,则相对来说,做灰度验证成本较高,此时可不做灰度验证;

第四,我们能够做线上灰度验证,还需要具备相应的工程和技术的能力,以及相应工具的准备等。

灰度发布的四种场景

灰度发布有四种常见场景,即简单分批、外部流量灰度、外部+内部流量灰度、全链路(流量+数据)灰度。四种场景依次递进。

1、简单分批

图片

简单分批不带任何的流量特征,只是把新旧两个版本的应用程序同时在环境中被请求和调用。请求会随机被路由到新版本或旧版本。假设一个服务由 10 个 pod 支撑,在服务路由到 pod 时。如果均匀分布,每个 pod 上约有 10% 的流量。简单分批的特征之一是部署时有批次,通过分批,使得每批有一定数量的流量;其次,批次之间有一段观测和验证时间。因此,对于简单分批,分批间的观测手段是必须的。当应用存在两个版本时,应用是否可以正常运行,是否存在故障风险,都需要通过观测手段来识别。

简单分批是最简单的一种灰度的方式,其不考虑流量的路由问题,只是简单地将两个版本在线上并存。当然,它也有一些要求。首先,需要保证应用对前一版本的兼容,即当 v1、v2 同时存在时,新版本的 v2 应兼容 v1,否则当用户先调用 v1,再调用 v2 时,会因为版本不兼容产生不一致问题。其次,建立观测能力,包括基础设施监控、应用监控及业务监控等,监控越完善,对分批的验证越充分,越有把握保证新版本没有问题。最后,批次以及每批的比例和观察时间需要明确定义,并且要让监控可以采集到足够的数据,确保可以发现问题。因此,要尽量在每个批次之间留出足够的观测时间。

2、外部流量灰度

简单分批最大的问题在于其完全没有流量特征,如果新版本质量较差,线上很大概率会出现一定比例的质量风险。为了解决这一问题,我们需要对灰度的流量进行隔离,只把特定的流量路由到灰度服务中,尽量不让正常流量受影响,这便是接下来要介绍的外部流量灰度场景。

图片

对于 K8s 上的工作负载,流量从 ingress 进入后,会通过特定的标识控制流量进入到指定的应用。标识可以是百分比,如 20% 的流量进入 service v1,80% 的流量进入 service v2。也可以是请求特征,如指定 header 标识进入 service v2,其他流量进入 service v1。外部流量灰度相较于简单分批,最大的区别在于有了入口的流量特征。比如按请求标识进行流量分批时,只有指定的 header、cookie 或地域特征的请求才会进入到灰度版本。外部流量灰度场景也有一定的要求。首先,要保证对前一版本的兼容,因为该场景对内部的流量调用没有约束。其次,必须存在监控系统。同时,对批次和观测时间也需要明确定义。最后,建议先流量切换,再清理工作负载,且两者之间应留有观察时间,即流量从灰度切到正式版本后,应有一定的观测时间,再清理灰度的工作负载。

外部流量灰度场景的问题在于,其只在入口处做了路由标识,一旦进入到内部服务间的调用,则无法再通过流量标识进行路由区分。

1)设置客户端灰度标识的常见思路

对于外部流量灰度场景,还有一个问题不可避免,即对入口流量分发起控制作用的灰度标识如何设置,以下是几种常见的思路:

图片

第一种,使用客户端特征属性。这是一种常见的设置方式,如客户端来自于哪个运营商,是移动、电信,或是联通;再如客户端的地址是哪里,是浙江、江苏,或是上海;再如浏览器版本等。这些特征可以帮助我们做特定的识别。比如把中国某省的移动用户作为灰度的用户集,并将流量路由到灰度版本上。使用这种方式其灰度特征非常明确,观测灰度用户数据难度较低。

第二种,通过客户 ID 做哈希分组。这种相对离散的方式可以避免幸存偏差,如前面案例中使用浙江省或移动客户进行测试,可能在其他运营商之间存在问题,这种方式可以避免这种偏差。

第三种,通过 cookie、header 或 query 参数携带灰度标识做验证。这是一种在 ingress 中经常用到的方式,如在线上的灰度服务中通过一些 cookie 将其路由到灰度的环境中。第四种,指定灰度的标识码进行验证,可以提前准备一些标识码,通过发放标识码的方式进行。

2)基于流量策略的灰度验证流程

设置好灰度标识后,灰度验证的流程如下:

图片

客户端读取灰度策略,灰度策略返回配置 _env:grey 或其他灰度标识,在请求业务接口时,根据是否带有灰度标识,把符合标识的请求路由到新版本服务中,不含有灰度标识的请求路由到老版本中,实现灰度的验证。

3、外部+内部流量灰度

前面提到的外部流量灰度场景无法解决应用内部微服务之间的流量问题,此时就需要用到外部+内部流量灰度的实践。

图片

首先,入口处与前一种场景相同,当流量进入后会通过流量策略携带灰度标识。进入应用内部时,应用内部同样有流量的路由策略。如,grey 的流量流入到 app-B grey 版本服务以及 app-C grey 版本服务中。prod 流量路由到其他 app 的 prod 中。当然,实际的流量策略会更加复杂,如 app-C 只有一个版本,则无论是 grey 或是 prod 都会路由到该版本上。

在这个过程中,会牵涉到一个问题,如何尽量少地对应用进行改动使其支持内部的流量灰度。对于内部的 RPC 流量灰度,可以引入类似于 istio、ASM、MSE 等工具来完成,借助其提供的机制做流量的路由。

第二,要保证版本的兼容性,因为除了应用间调用,还有数据、消息等,在这个场景下并没有进行灰度区分。

第三,应用版本更新和流量的调整要串行处理。比如,有些团队在部署时,希望能控制各个应用的部署顺序,且每次的顺序不一定相同,要保证存在依赖关系的几个应用按正确的顺序部署,如 a 依赖 b 和 c,当 b、c 更新完成后,才把服务部署到 a 上。如果顺序有误,在 b、c 未更新时,流量就进入 a,则会产生预测外的风险。对此,开发者有较重的心智负担。此时可以转换思路,将灰度验证时的流量进入延后,先同时把 a,b,c 应用的灰度环境都部署完,再把灰度流量载入,摆脱应用更新时的依赖关系,把流量调整和版本更新分开处理。

第四,关于监控,与前面的灰度验证相同。

第五,数据库和中间件需要保持兼容。如果 c 的灰度和生产都用了同样缓存会存在干扰;或者两者都消费了同样消息,灰度的产生的消息有可能会被生产消费。这个过程是否能保持兼容是需要考虑的问题。至此,除中间件之外在流量侧已基本实现了灰度,而在数据侧仍未处理。

4、全链路(流量+数据)灰度

图片

该场景在于如何处理流量+数据的灰度,其不只包含全链路流量的灰度,还包括中间件(如消息、缓存)和数据库等,也能对流量标识进行处理。这种场景非常依赖中间件的建设,对团队工程能力要求较高。

对于该场景,我们的建议是,首先,按优先级逐步建设;其次,先解决数据库之外的中间件问题;第三,尽量寻求专业的技术团队获取实施方案,如 MSE 团队。

四种灰度发布场景,逐渐由简单到复杂,简单分批最简单,成本也最低。

将灰度发布融入应用研发流程

接下来,我们需要在应用研发流程中将灰度发布串联起来。这部分将围绕如何把灰度发布固化为研发流程的一部分展开介绍。

1、管理环境和角色权限

图片

首先,我们建议将灰度环境作为独立的环境,与正式环境隔离,降低环境管理和权限控制的复杂度。其次,为应用定义不同的角色如开发、运维等,不同的角色拥有不同的环境权限。

2、镜像更新和流量调整

图片

我们建议把镜像更新与流量调整分离成不同的步骤,在镜像更新前把流量切零,更新之后再调整镜像灰度流量,这样的好处在于,灰度镜像更新过程中无需关心服务是否可用,按照批量下发的思路一次性更新即可,这样可以避免复杂的部署顺序编排问题。

3、整合配置和数据变更

如果配置变更和数据变更对灰度发布有关键影响,我们要对其进行整合。

图片

一般情况下,数据变更会先于应用部署完成,甚至早于整个流程,也可以串进研发流程中,如在数据变更的发布单中完成数据变更。当灰度流量调整前后,完成配置变更,这样就可以把配置和数据变更整合起来,保证灰度验证前整个环境的完整性。根据以往遇到的灰度验证案例,很多灰度验证流程只进行了镜像更新,但实际上还有很多准备工作,如数据库操作、配置操作等。但这些操作往往会散落在不同的地方,这会对灰度验证带来两方面的不良影响,一是整个的过程的自动化程度低,效率低,二是容易产生误操作等各方面的风险,导致即便完成镜像更新,在不进行数据变更和配置变更的情况下还会产生其他风险。

4、灰度发布的验证

图片

在灰度发布过程完成之后,应加入验证节点。首先,可以进行最简单、最通用的自动化验证,或者人工的卡点,人工确认灰度无误,保证在灰度验证成功之后才进入生产过程。

5、灰度完成后的清理

图片

灰度验证通过后的清理过程,主要包括两个目的,第一,降低灰度环境中的负载和资源消耗,还可以避免部分流量进入灰度环境产生的风险。当然,该流程取决于实际情况,很多情况下可能不会将其全部清理,可以缩成一个副本,使其在和其他服务进行灰度部署时,也可以验证。

演示:外部流量灰度场景

演示是基于 K8s ingress 灰度发布场景。

1、场景概述

图片

首先,入口域名会配置两条路由策略,一条是灰度策略,当它带有 _env:grey 的 header 标识时,进入到灰度的 ingress,再进入到灰度的 service 和 deployment,共同组成独立的灰度环境。另一条是不带该标识,则会进入正式环境的 ingress、 service 和 deployment,共同组成正式环境。为了便于展示,各个环境均只有一个 deployment。

在研发流程到生产阶段,首先设置准入条件,且准入条件在经过前面测试阶段的验证后才能开始生产阶段的部署。其次,会从 master 分支构建镜像。然后会经过运维审批的节点,如果不通过,整个流程停止。接下来部署灰度环境,进行灰度验证,如果灰度验证失败,则不进入生产阶段,不做灰度变更,直接进行灰度的清理,如果灰度验证通过,则依次进行生产部署、灰度清理、关闭变更,关闭变更意味着前面的步骤都是成功的。灰度清理包含两种情况,一种是生产部署结束之后,一种是灰度验证失败后。接下来进入真实环境展示整个流程。

2、DEMO 演示

登录进入云效的 AppStack,演示在真实的 K8s 应用中进行 ingress 灰度流量的过程。

详细的文档操作步骤,可前往:基于 Nginx Ingress + 云效 AppStack 实现灰度发布

课后答疑

Q1: 全链路灰度如何实现?

A1: 全链路灰度场景分为几层。首先考虑外部流量场景是否足以满足需求,接下来拓展到外部+内部 RPC 层面,如果还不能满足实际需求,再考虑架设全链路灰度。但全链路灰度成本较高,可以先了解阿里云 MSE 等专门做全链路灰度的产品和方案,再结合社区的方案,如 istio 等工具。因为中间件涉及的内容很多,与自身的技术栈有很大关系,很难有标准的实现,如果是 JAVA 或 golang,MSE 是一个很好的选择。

Q2: 假设某系统中有十个微服务,本次版本发布只发布 A、B、C、F 四个,如何保证内部调用时都是最新的?

A2: 可以把目前例子做简单调整。首先,在现在的流程中,最后会清理灰度环境,这里可以不作清理,保留的灰度环境与生长环境使用不同的 service 集群,则 10 个微服务的灰度版本永远是最新的。当把 A、B、C、F 更新到灰度环境时,内部调用仍是灰度环境的 A、B、C、F,服务之间调用则是 namespace 内部的服务调用,即从 K8s 设备路由访问,而不跨 namespace 访问。在这种情况下,就可以保证在灰度 namespace 下调用的是灰度下的服务,而不会调用到生产的服务。如果不基于 K8s 的服务发现,采用独立的注册中心,也需要保证在注册中心有对应的 namespace 等机制来区分灰度和生产环境。

Q3: 灰度发布时数据库如何处理?

A3: 这个问题较为复杂。首先,我们建议尽量不要让灰度有数据库的差异,或者将数据库的差异在灰度发布处理,实现兼容。因为在灰度发布中,如果数据库层面存在差异,难度会非常大,且容易出现一些问题。其次,数据库的变更不一定要融入到整个研发流程中,甚至多数情况下其实不需要融入其中,若有数据库的变更要提前完成,因为数据库变更相对于应用变更或配置变更风险更大。

Q4: 用同一应用还是给客户分配不同的 namespace?

A4: 如果客户有类似于租户的概念,如云效,有很多客户企业,每个企业都有自己的企业 id,企业间的数据逻辑上是隔离的。从这个角度,如果客户是逻辑隔离,则不需要分配不同的 namespace。如果隔离粒度要更高,一般先考虑数据上的隔离。

Q5: 灰度发布功能可以联动函数计算吗?

A5: 可以,在原有的研发流程中把函数计算的步骤编排进去即可。

Q6: 灰度策略存储在哪里?

A6: 云效目前存储在系统,即云效本身的环境配置中,也可以放在代码库、IaC 库或配置中心等。但可能存入应用的环境更为合适,因为在定义环境时就定义了其灰度策略。

Q7: 灰度和生产环境数据隔离吗?

A7: 理论上不隔离,即使要隔离也是逻辑的隔离。

Q8: 灰度发产生的多余数据如何处理?

A8: 目前没有更好地处理办法,若是数据问题,只能靠本身数据层的逻辑,如灰度数据标等,由于偏测试数据,可以保证数据有办法清理和恢复的。如果真的产生了多余的数据,只能重新修复。

Q9: 如果有 Zookeeper 注册中心,是在注册中心增加头部信息吗?

A9: 如果是有 ZK,取决于微服务架构的形式。如果服务都通过 ZK,则建议在 ZK 完成。如果不是,则可以简单一些在 K8s 中完成即可。

Q10: 是否平台对代码依赖很大?

A10: 对代码依赖不算高,但其中的关键点 RPC 部分/流量的部分是否使用通用的标准协议,如果是 Dubbo 或部分框架,它有相应的要求,如要求有注册中心,就会有一定的影响。从另一个侧面,建议尽量避免这种依赖。在最后的 demo 场景中没有这种依赖的,当然,对基础设施有依赖,即基于 K8s 的 YAML 编排能力,当然其他方式也能做到类似的效果。

Q11: 推荐注册中心还是 K8s?

A11: 没有固定的要求。从个人角度讲,如果 K8s 足以,使用 K8s 即可,无需引入注册中心,但如果有其他方面的要求,或要跟不同的环境中的服务做联动,可以使用注册中心。因为注册中心的特性更丰富,而且也与是否 K8s 没有耦合性。

Q12: Flow 的 YAML 语法和 Jenkins file 的差异?

A12: 两者的差别较大。jenkinsfile 基于 Groovy 语法,Flow 的 YAML 更像 Github Actions。

Q13: 如何在触发构建时只让指定的环境触发构建?

A13: 刚刚的演示中有简要的介绍。我们使用了 condition 语句的方式,生产步骤何时执行限制了条件,如清理环境,只有当条件满足时才执行,反之则不执行。选择性的构建可以使用这种方式。

Q14: 原来使用的是 Nacos,是否有必要更换为 K8s?

A14: 如果不影响工作,则没有必要特意更换。

相关推荐

推荐一款好用的刷题工具

为了帮助正在准备求职季的开发者提升备战效率,阿里云特别推出“通义灵码陪你备战求职季”活动,精心挑选百道历史校招技术面试/笔试题,借助通义灵码智能问答、代码智能生成、代码优化等核心功能,帮助开发者更加准确地了解程序员职业所需的核心技能,加强对问题解决思维和解题能力的练习。

阿里巴巴云原生的博客 1381

通义灵码 Visual Studio 下载安装指南(附安装包)

本安装步骤适用于 Windows 10 及以上操作系统中安装和使用通义灵码。

阿里巴巴云原生的博客 4435

AgentCore + Codex 构建生产级 Agent 的原理与实践

本文章演示 AgentCore[1]的自定义代码/镜像能力,目的是展示如何基于自定义的 Harness 框架(Codex) 结合 AgentCore 提供的身份、模型、工具、技能、凭证 、观测评估等能力实现一个端到端的 Agent 应用,内容包含两个部分,技术方案和实践教程,文末附相关源码和本次的测试数据,可以根据需要自行查阅。

阿里巴巴云原生的博客 91

让复杂任务由团队完成:阿里云 AgentCore 多 Agent 协作架构及实践

Alibaba Cloud AgentCore 以身份、通信、团队和任务为基础,让专业 Agent 与人类成员共同参与业务协作。企业可以按职责组合知识、工具、Skill 和模型,用任务系统持续追踪工作,再结合 AgentLoop 评估效果、优化配置。

阿里巴巴云原生的博客 326

易点天下:AI 驱动 IT 运维组织提效的实践

易点天下作为一家专注品牌全球化的营销科技公司,由智能营销、全域增长、智能变现三大引擎驱动。公司旗下拥有“整合营销服务”与“广告平台业务”两大业务线。

阿里巴巴云原生的博客 300

阿里云可观测 2026 年 10 月产品动态

阿里云可观测 2026 年 10 月产品动态

阿里巴巴云原生的博客 193

用 Nacos 3.3.0 ARD 让 Agent 按任务发现工具和 Skill

如今,工作中用 Agent 帮忙已经越来越常见。研发同学用 Coding Agent 写代码、补测试、排查问题,业务同学用 Work Agent 整理资料、分析表格、制作演示文稿。不少过去需要自己一步步操作的事情,现在可以把需求交给 Agent,让它协助完成。

阿里巴巴云原生的博客 311

HiRoute 新版本发布:结合自己的真实工作选择最佳模型

HiRoute[1]是一个开源、运行在本地的 Agent 智能路由引擎。你继续用 Codex、Claude Code、Qoder、Pi、OpenCode、Hermes、DeepSeek Harness 等熟悉的 Agent,由 HiRoute 判断每一步交给哪个模型。

阿里巴巴云原生的博客 380

用户说 App“下不了单”:用 Session Replay 看清流程卡在哪一步

Session Replay(会话回放)将采集到的页面变化重建为可回看的过程。研发可以沿着这次会话,查看操作前后的界面变化,先确认流程停在了哪里,再结合当时的事件、日志和代码检查原因。

阿里巴巴云原生的博客 55

欢迎报名丨Alibaba Cloud AgentCore 企业智能体构建与治理八城巡回沙龙 · 杭州站开启

欢迎报名丨Alibaba Cloud AgentCore 企业智能体构建与治理八城巡回沙龙 · 杭州站开启

阿里巴巴云原生的博客 135

运维走出控制台:阿里云 AgentCore AI Native 运维实践

UModel 让现场能够被关联,运维数字员工让经验能够被调用,AgentCore Team 让分析能够协作,AgentLoop 让质量能够被检验。这些建设共同服务于一件事:让团队对系统的理解,成为每个人处理问题时都能接上的能力。

阿里巴巴云原生的博客 296

从长程 Agent 到 Super-agent,解锁更多场景

Deepseek Harness 提升了架构的透明度,但也带来了工程上的复杂度。这次开源的dsh-superagent-prototype,是对 Agent “连续实体”能力的工程拆解。

阿里巴巴云原生的博客 232

排查提效 50%:淘大集新核心系统的观测护航之路

供应链运维,缺的不是更多机器,是“一条能把指标、日志、链路串起来的线”。阿里云 ARMS+SLS+云监控2.0+STAROps 重构观测底座。

阿里巴巴云原生的博客 147

概率、插座与 5000 个爱因斯坦:专访阿里云研发副总裁周琦

这次访谈发生在 2026 年云栖大会之后。大会期间,阿里云发布了智能体构建和治理平台 AgentCore,将企业级 Agent 基础设施进一步标准化和托管化。

阿里巴巴云原生的博客 152

Agent 数据飞轮平台的选型和实践

用统一标准判断修改效果,积累覆盖不同路径的测试样本,沿执行记录排查失败,并将典型问题纳入后续回归。而这也是宙斯接入 AgentLoop 要解决的问题。

阿里巴巴云原生的博客 28

Durable Agent 详解:如何让 Agent 在云端长期稳定运行

本文使用一个具体的用户任务示例“向五位客户发送通知邮件”,解释为什么保存聊天记录还不够,再以 AgentScope 构建的 Agent 为例,展开任务状态、持久提交和故障恢复的通用设计,最后结合 Alibaba Cloud AgentCore 已有的 Harness 托管与节点恢复能力,讨论共享状态、可靠调度及 Brain / Hands 分离如何支撑更完整的长期托管服务。

阿里巴巴云原生的博客 335

Qoder × AgentLoop:智能体规模化应用,敏感数据保护如何跟上?

智能体观测与优化平台 AgentLoop 持续分析已采集的 Qoder 审计日志,将发现的风险线索关联到具体会话、工具调用、成员和环境,帮助安全团队回查任务过程、明确需要整改的环节,并复查处理效果。

阿里巴巴云原生的博客 288

完整还原已经服务千家企业的 AIOps Agent 的评测和调优实践

阿里云 STAROps 是一个生产运维 Agent,通过连接多域数据、运维工具与专家经验,从被动响应走向智能自治,7×24 保障业务连续、稳定运行。本文将分享 STAROps 的评测和调优实践。

阿里巴巴云原生的博客 198

阿里云云原生四项 AI 应用工程化实荣获“鼎新杯”优秀案例

第五届“鼎新杯”由中国通信标准化协会主办、中国信息通信研究院承办,自2026年05月正式启动,历时近 5 个月,聚焦国内政企数智化转型领域的创新成果,旨在为行业提供可复制、可推广的实践参考。

阿里巴巴云原生的博客 322

交付周期从 51 天缩短到 14 天,多 Agent 协作产品⾃进化背后的组织重构

本⽂结合这段实践,介绍评测如何驱动产品持续进化、⼈机协作的边界如何设定,以及团队如何通过统⼀⽬标、结果标准和责任分⼯,减少跨岗位交接,降低沟通损耗,把技术能⼒转化为实际交付效果。

阿里巴巴云原生的博客 327

从部署上线到运维优化:STAROps 与 ROS Agent 的资源运维自动化实践

STAROps 数字员工提供统一的运维对话入口,结合日志、指标、告警等信息理解问题,并通过 alibabacloud-ros-agent 技能,将基础设施规划和变更任务委派给 ROS Agent。

阿里巴巴云原生的博客 129

车企数据隐私保护必修课:如何用 SLS mask 守住日志中的敏感信息

阿里云日志服务 SLS 的 mask 函数可在采集或写入阶段替换匹配的敏感值,同时保留业务状态与调用链,并结合访问控制和保留期限管理减少暴露。下文通过车辆与车主服务、海外联网订阅、智能座舱交互三类业务中的四组日志,介绍规则选择与脱敏效果。

阿里巴巴云原生的博客 111

切换模型会损失缓存,智能路由还省钱吗?

智能路由会把不同的工作交给不同的模型。很多人随之会问:模型一换,之前积累的缓存就用不上了,这笔损失会不会把省下的钱又花回去?

阿里巴巴云原生的博客 209

LiteLLM 半年两度被投毒,大模型的“钥匙串”该放在哪里?

开源 Higress 把扩展代码关进 Wasm 沙箱,把发布链路锁成不可变;Higress 企业版再把凭证、供应链和防护交给平台托管。选哪一种,取决于你的团队想把精力花在哪里。想先试试托管形态的话,Serverless 标准版 0 元起步,不用先付实例费。

阿里巴巴云原生的博客 315

用 Kimi K3.1 Pro 重新介绍 AgentCore

今天凌晨 Kimi 发布 K3.1 Pro,在前端页面、Three.js 交互场景有明显提升。本文使用 Qoder 上提供的 K3.1Pro 模型,设计并排版了介绍 AgentCore 的全新方式。

阿里巴巴云原生的博客 13

从 Jev 范式决策模型接入,到参与 Team 协作的完整实践

本文将以一个工单分诊助手为例,把开发、打包和上线的过程串起来:用 AgentScope Java 与百炼决策模型(国内网络无法使用 Jev)实现分诊,通过代码包部署到阿里云 AgentCore[1],再验证普通调用和流式调用。文章最后,再看这个助手如何加入 Team,参与任务分工与报告审核。

阿里巴巴云原生的博客 340

MCP 服务无状态,任务状态存哪?RocketMQ LiteTopic 给每个任务一本账

AI Agent 调用一个工具,有时几百毫秒就能返回,有时却要运行好几分钟——比如检索一大批资料、生成一段长内容,或执行一次批处理。让请求一直挂着等结果,会长期占用连接和资源,也很难支撑大规模并发。

阿里巴巴云原生的博客 296

Personal Agent 观察:拆解全天候运行的技术挑战

本文将探讨一下,为什么 Personal Agent 成为了当前新的 AI 应用竞争点,底层技术以及后续国内跟进的可能方向。

阿里巴巴云原生的博客 293

Agent as a Service:驱动 Personal Agent 与企业智能体的服务架构

本文以 AgentScope 为基础,围绕 Sandbox as Tool 展开这条建设路径:将 Harness 托管为远端服务,将 Context、Memory 与恢复状态接入云端状态服务,通过执行权交接支持本地与远端续做,再通过 Brain/Hands 分离连接不同位置的工具执行端。

阿里巴巴云原生的博客 155

非算法工程师也能看懂,推理框架的来龙去脉

虽然 Model、Harness 的概念已深入人心,但推理框架这个算法工程师才会使用的概念似乎还略显陌生。不过,它和我们使用模型的费用和体验息息相关,例如为什么的输出价格是输入的 4 倍,缓存命中的价格是未命中的1/50(以 DeepSeek 当前的定价为例)等等,相信本文对这些疑问会提供一些通俗易懂的解答。

阿里巴巴云原生的博客 148
上一篇: 5% 消耗,6 倍性能:揭秘新一代 iLogtail SPL 日志处理引擎与 Logstash 的 PK
下一篇: 阿里云 SAE 助力修正商城 3 周内提升系统承载能力 20 倍,轻松应对春晚流量
阿里云云原生
阿里云云原生 企业官方账号 企业官方账号
博客等级 码龄8年 1万+粉丝 3144原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值