微服务发布策略全解析:蓝绿、滚动、灰度与金丝雀发布实战指南
1. 从“停机更新”到“丝滑上线”现代微服务发布策略的演进还记得早年做单体应用的时候每次版本更新都是一场“深夜战役”。整个应用需要停机把新版本的程序包一股脑儿全量替换上去然后重启服务祈祷一切顺利。如果上线后发现一个致命Bug那场面堪称灾难只能紧急回滚又是一次全量停机用户体验和业务连续性都受到巨大冲击。这种“一刀切”的发布方式在业务复杂度低、用户量不大的时代尚可忍受但随着互联网业务的爆炸式增长和微服务架构的普及它已经彻底行不通了。微服务架构将单体应用拆分成一组小型、自治的服务。这带来了开发敏捷性和技术栈灵活性的巨大优势但也让发布部署变得前所未有的复杂。一个电商应用可能由用户中心、商品服务、订单服务、支付服务等几十甚至上百个微服务组成。如果还采用全量停机发布意味着整个电商网站要停摆这显然是不可接受的。于是一系列旨在实现“服务不中断、用户体验平滑过渡”的发布策略应运而生。它们的目标很明确在保证系统整体可用性的前提下安全、可控地将新版本服务推向生产环境。今天我们就来深入聊聊微服务部署中最核心的四种发布策略蓝绿发布、滚动发布、灰度发布和金丝雀发布。这不仅仅是几个技术名词更是保障线上业务稳定性的生命线。很多团队在引入微服务后发布流程却还停留在“手动替换Jar包”的原始阶段这正是系统稳定性的最大隐患。理解并正确运用这些策略意味着你能在用户无感知的情况下完成功能迭代、修复线上问题甚至进行大规模架构升级。接下来我会结合真实的场景、底层原理和踩过的坑为你逐一拆解这四种策略让你不仅知道它们是什么更明白在什么情况下该用哪一种以及如何避开实践中的那些“坑”。2. 蓝绿发布简单粗暴的“开关式”切换蓝绿发布Blue-Green Deployment是我个人非常推崇的一种策略尤其适合发布流程初期或对稳定性要求极高的核心服务。它的理念极其简单准备两套完全独立的生产环境一套叫“蓝环境”Blue承载当前线上流量另一套叫“绿环境”Green部署新版本服务。两套环境在硬件、网络、配置上完全对等。2.1 核心工作流程与流量切换假设我们当前线上运行的是v1.0服务蓝环境。发布新版本v1.1时流程如下部署阶段在绿环境部署全新的v1.1服务实例。此时绿环境是“冷”的没有任何用户流量。这个阶段可以充分进行健康检查、预启动、缓存预热等操作。测试验证通过内部域名或负载均衡器的特定策略将一小部分内部测试流量或者通过直接调用端点的方式对绿环境的v1.1服务进行完整的集成测试、API测试和性能测试。因为不影响真实用户测试可以做得非常彻底。流量切换当确认绿环境v1.1服务稳定达标后通过修改负载均衡器如Nginx, HAProxy或服务网格如Istio的配置将所有用户流量从蓝环境v1.0瞬间切换到绿环境v1.1。这个切换动作在网络层面几乎是瞬间完成的。观察与回滚切换后密切监控绿环境的各项指标错误率、延迟、CPU/内存等。如果发现问题只需将负载均衡器的配置改回蓝环境流量瞬间切回实现秒级回滚。蓝环境的v1.0服务一直处于就绪状态是完美的回滚备份。这个过程中对用户而言他们可能只会经历一次非常短暂毫秒级的网络连接重定向服务本身没有中断。整个发布过程的核心在于“流量切换”这个开关动作。2.2 优势与适用场景分析蓝绿发布的优势非常突出发布与回滚极快发布和回滚都只是一个配置变更速度极快能将故障恢复时间MTTR降到最低。风险隔离彻底新旧版本运行在完全隔离的环境不存在资源竞争或相互影响。流程简单清晰概念简单易于向运维、测试甚至业务方解释。零停机时间理论上可以实现真正的用户无感知更新。但它也有明显的代价和局限资源成本翻倍需要长期维护一套完整的冗余环境硬件和运维成本高昂。这是它最被诟病的一点。数据库等有状态服务处理复杂如果新版本涉及数据库表结构变更Schema Change问题会变得棘手。因为蓝绿两套环境的应用层虽然隔离但通常共享同一个生产数据库。v1.1版本的应用如果依赖新的表结构在切换前就必须完成数据库的变更而这个变更必须是向后兼容的例如只增加字段不删除或修改原有字段否则切换后旧版本v1.0的应用将无法工作。这需要非常精细的数据库版本管理策略如Liquibase, Flyway和分步发布流程。不适合频繁发布由于每次发布都需要完整部署一套新环境对于每天需要发布数十次的团队来说资源成本和部署耗时可能无法接受。实操心得蓝绿发布特别适合重大版本升级、底层框架更换如Spring Boot大版本升级或核心交易链路改造。在这些场景下回滚速度的重要性远高于资源成本。我们曾在一个支付网关的重构中采用蓝绿发布新版本上线后因一个第三方证书兼容性问题导致少量失败通过秒级切回蓝环境完全避免了资损和用户投诉。那一刻你会觉得多花的那些服务器费用无比值得。3. 滚动发布渐进式替换的“温水煮青蛙”滚动发布Rolling Update是Kubernetes等容器编排平台默认的发布方式也是资源利用率最高的一种策略。它的核心思想不是同时维护两套完整环境而是逐步用新版本的Pod或实例替换旧版本的Pod。3.1 Kubernetes中的实现机理在Kubernetes中当你更新一个Deployment的镜像版本时滚动发布就自动发生了。其过程可以概括为创建新PodKubernetes会根据策略先启动一个或多个新版本v1.1的Pod。就绪探针检查新Pod启动后Kubernetes会持续调用其“就绪探针”Readiness Probe来确认Pod是否已经准备好接收流量。只有就绪探针返回成功该Pod才会被加入到Service的端点Endpoint列表从而开始接收用户流量。终止旧Pod在新Pod确认就绪后Kubernetes会终止一个旧版本v1.0的Pod。循环迭代重复上述“启动新Pod - 等待就绪 - 终止旧Pod”的过程直到所有旧Pod都被替换为新Pod。这个过程就像更新一排士兵让新兵一个个入列同时让老兵一个个退役始终保持队伍的总人数和战斗力服务能力不变。3.2 关键配置参数与风险控制滚动发布的行为由几个关键参数控制理解它们对于安全发布至关重要maxUnavailable在更新过程中允许不可用的Pod数量占总数的最大比例。例如设置为25%意味着在更新时最多可以有25%的Pod同时处于不可用状态正在终止或尚未就绪。这个参数直接影响发布期间服务的剩余容量。设置过小如0会导致发布速度极慢设置过大如50%则可能在发布期间因流量洪峰冲垮剩余实例。maxSurge在更新过程中允许创建的超出期望副本数Desired Replicas的Pod数量最大比例。例如设置为25%意味着在更新时可以额外多创建25%的Pod新版本。这个参数决定了发布期间资源的临时增量。适当调大maxSurge让新Pod先全部启动并就绪再逐步下线旧Pod可以实现更平滑的流量过渡但会消耗更多临时资源。一个常见的稳健配置是maxUnavailable: 0和maxSurge: 1。这意味着在发布时先启动一个全新的Pod等待它完全就绪后再终止一个旧Pod。这样在整个发布过程中可用的Pod数量永远不会少于期望值服务容量始终有保障但发布耗时最长。3.3 优势、局限与实战陷阱优势资源利用率高不需要长期维护冗余资源按需临时创建。发布过程平滑流量逐步迁移对系统冲击小。与编排平台原生集成在K8s中是标准操作简单易用。局限与风险版本共存与兼容性在发布过程中新旧版本的应用实例会同时在线共同处理用户请求。这就要求新版本v1.1必须向后兼容旧版本v1.0的API、数据格式和业务逻辑。如果v1.1修改了一个API的响应结构而某个用户请求先被v1.0实例处理了部分逻辑后续请求又被v1.1实例处理就可能导致业务异常。这是滚动发布最大的挑战。回滚速度相对较慢回滚也需要执行一次“滚动”操作无法像蓝绿发布那样秒级切换。复杂依赖下的发布协调如果服务A依赖服务B当服务B滚动发布时服务A可能会同时调用到B的v1.0和v1.1实例如果这两个实例接口不兼容会导致服务A大量报错。这需要更上层的发布协调或强力的API版本管理。踩坑实录我们曾在一个用户信息服务滚动发布时踩过大坑。新版本v1.1为了优化性能将用户头像的URL存储格式从完整路径改为了相对路径。发布期间一个前端请求先被v1.0实例处理写入了完整路径到缓存紧接着另一个请求被v1.1实例处理它读到缓存中的完整路径却试图按相对路径解析导致头像无法加载。这就是典型的“版本共存导致数据格式不一致”问题。解决方案是对于数据格式的变更必须保证新旧版本都能读写对方格式的数据或者将数据格式变更与应用发布拆分成两个独立的、不可重叠的步骤。4. 灰度发布与金丝雀发布精准控制的“试验田”灰度发布Gray Release和金丝雀发布Canary Release在理念上非常接近都是将新版本先开放给一小部分特定用户或流量进行试用验证无误后再逐步扩大范围直至全量。很多人会将两者混用但在精细程度上它们有所区别。4.1 概念辨析广义的灰度与狭义的金丝雀灰度发布是一个相对广义的概念泛指任何“让一部分用户先用新功能”的发布策略。划分用户的维度可以多种多样比如按用户ID尾号、按地域、按设备类型、按用户标签如VIP用户等。它的核心是基于规则的流量切分。金丝雀发布是灰度发布的一种特例通常指完全随机地选取一小部分例如1%、5%的生产流量导入新版本。这个名字来源于矿工用金丝雀来探测矿井中的有毒气体。在发布中这批“不幸”被随机选中的用户就像金丝雀用他们的真实体验来探测新版本是否存在问题。它的核心是基于比例的随机抽样。在实际中金丝雀发布常作为灰度发布的第一步先随机放量1%的金丝雀流量观察核心指标如果稳定再进一步按更复杂的业务规则灰度发布扩大范围。4.2 技术实现从负载均衡到服务网格实现灰度/金丝雀发布关键在于流量路由的精细控制。技术栈不同实现方式也不同。1. 基于负载均衡器/网关的简单实现 对于入门级或业务规则简单的场景可以在应用层网关如Spring Cloud Gateway, Nginx上做文章。Nginx示例可以通过nginx的map指令或OpenResty的lua脚本根据cookie或url参数将流量导向不同的上游服务组。# 简单基于权重的金丝雀 upstream backend { server backend_v1 weight95; # 95%流量到旧版本 server backend_v2 weight5; # 5%流量到新版本 }Spring Cloud Gateway可以编写自定义的GlobalFilter根据请求头中的用户信息将请求路由到不同版本的服务实例。这种方式实现快但规则维护在网关上灵活性较差且无法做到基于应用层内容如请求体的复杂路由。2. 基于服务网格Service Mesh的进阶实现 这是目前实现高级灰度发布最理想的方式以Istio为代表。它将流量路由规则称为“虚拟服务”VirtualService与具体的服务实例部署称为“目标规则”DestinationRule解耦。# DestinationRule定义服务子集版本 apiVersion: networking.istio.io/v1beta1 kind: DestinationRule metadata: name: product-service spec: host: product-service subsets: - name: v1 labels: version: v1.0 - name: v2 labels: version: v1.1 --- # VirtualService定义流量路由规则 apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: product-service-route spec: hosts: - product-service http: - match: - headers: end-user: # 匹配特定测试用户 exact: test-user-123 route: - destination: host: product-service subset: v2 # 测试用户走v2版本 - route: # 其他所有流量 - destination: host: product-service subset: v1 weight: 90 # 90%流量去v1 - destination: host: product-service subset: v2 weight: 10 # 10%流量去v2金丝雀通过Istio你可以轻松实现基于请求头、URI、方法等的复杂匹配规则。动态调整流量权重如从1%逐步调到100%无需重启任何服务。注入故障超时、中断进行混沌工程测试。监控不同版本实例的差异化指标如v1和v2的延迟、错误率对比。4.3 核心价值风险控制与数据驱动灰度/金丝雀发布的最大价值在于将“发布”从一个二进制的是否操作转变为一个可观测、可控制、可回滚的渐进过程。降低爆炸半径即使新版本有严重Bug也只会影响一小部分用户将业务影响控制在有限范围内。真实环境验证在内部测试环境Staging中无法完全模拟生产环境的流量压力、用户行为和数据规模。金丝雀发布是在生产环境进行的“真实试验”获得的反馈是最可靠的。数据驱动决策发布不再靠“拍脑袋”。你可以基于监控到的真实数据如新版本的错误率是否上升、接口延迟是否增加、业务转化率是否变化来决定是扩大发布范围还是立即回滚。A/B测试集成灰度发布很容易与A/B测试平台结合。你可以将新版本功能只推给特定用户群然后对比该群组与对照组在关键业务指标上的差异从而科学评估功能效果。经验之谈实施灰度发布监控和告警必须先行。你需要定义清晰的“发布成功指标”和“熔断指标”。例如对于订单服务成功指标可能是“订单创建成功率99.9%”熔断指标可能是“v2版本错误率超过v1版本0.5%并持续2分钟”。一旦触发熔断指标自动化系统或运维人员应能立即将流量切回全量v1。我们曾为一个推荐算法服务做灰度就是通过实时对比灰度组与全量组的“点击通过率”和“下单转化率”发现新算法虽然点击率微升但转化率显著下降从而果断中止了发布避免了更大的营收损失。5. 发布策略的综合选型与实战融合了解了四种策略后面对一个具体的微服务到底该如何选择这没有标准答案但可以遵循一个清晰的决策框架。5.1 选择策略的决策维度你可以从以下几个维度来评估发布频率高频发布日级/周级滚动发布、金丝雀发布是更优选择资源消耗低流程自动化程度高。低频发布月级/季度级蓝绿发布更有优势因为资源翻倍的代价可以被重大更新的稳定性收益所覆盖。服务重要性爆炸半径核心支付、交易链路对稳定性要求极致可考虑蓝绿发布确保秒级回滚或采用非常保守的金丝雀发布如0.1%流量开始观察数小时。内部工具、后台管理服务影响面小可以直接采用滚动发布甚至简单的替换发布。变更类型数据库结构变更需要特别谨慎。通常需要将数据库变更与应用发布解耦并确保变更向前/向后兼容。蓝绿发布在此场景下挑战最大因为两套环境共享数据库。滚动发布要求应用能同时兼容变更前和变更后的数据库。前端功能/界面改动非常适合基于用户特征的灰度发布可以针对特定用户群体开放新UI。底层框架/性能优化适合金丝雀发布通过对比新老版本的性能指标如延迟、吞吐量来验证优化效果。基础设施与团队能力是否具备Kubernetes等容器编排平台它原生支持滚动发布。是否引入了Istio等服务网格它是实现复杂灰度发布的利器。团队的监控、告警、自动化运维能力是否跟得上没有完善的监控灰度发布就是“盲人骑瞎马”。5.2 组合拳混合发布策略实践在实际生产中高级的发布体系往往是多种策略的组合形成一条发布流水线。一个典型的融合流程可能是阶段一开发测试在Feature Branch上开发通过CI/CD管道构建镜像。阶段二预发环境部署到Staging环境进行集成测试和性能测试。这可以看作是一个静态的蓝绿环境Staging vs Production。阶段三生产环境-金丝雀通过服务网格将1%的随机生产流量导入新版本Pod滚动发布方式部署持续观察15-30分钟。监控核心业务指标和系统指标。阶段四生产环境-灰度扩大如果金丝雀阶段一切正常将流量比例逐步提升至5% - 20% - 50%。同时可以切换到更精细的灰度规则例如只对“北京地区的iOS用户”开放新功能。阶段五生产环境-全量最终将流量权重调整为100%完成全量发布。此时旧版本的Pod可以被逐步缩容至零滚动发布的完成态。全程保障在整个过程中设置自动化告警。一旦在任何阶段发现关键指标异常立即执行回滚。回滚可以是将流量权重调回旧版本灰度场景也可以是触发一次反向的滚动更新或者直接切换负载均衡指向蓝绿场景。5.3 必须跨越的通用挑战无论采用哪种策略以下几个问题是共通的必须提前解决配置管理不同版本的服务可能需要不同的配置文件如特性开关、第三方服务地址。需要有一套强大的配置中心如Apollo, Nacos支持按应用、按环境、按版本下发配置。数据兼容性这是微服务发布的“头号杀手”。必须严格遵守向后兼容原则新的API要兼容老的调用方新的数据字段要有默认值数据库变更要可回滚。对于破坏性变更必须使用版本化API如URL路径/api/v1/user,/api/v2/user并制定旧版本的下线时间表。客户端兼容性对于移动端或桌面客户端应用服务端发布新版本API时必须考虑旧版本客户端的兼容性问题。通常需要服务端同时支持多版本API一段时间并通过客户端埋点数据推动旧版本升级。发布流程自动化与标准化手动执行复杂的发布步骤是灾难的根源。必须将选定的发布策略固化到CI/CD流水线中实现“一键发布”、“一键回滚”。每一次发布都应有清晰的记录和可追溯性。发布策略不是一个个孤立的银弹而是一套服务于业务稳定性和研发效率的组合工具。从理解它们各自的原理和适用场景开始结合自己团队的技术栈和业务特点从小范围试点逐步构建起适合自己的、自动化的、安全可靠的发布体系。这个过程本身就是对微服务运维能力的一次重要升级。

相关新闻

Win11系统下SecureCRT安装配置全攻略:从零搭建高效远程终端环境

Win11系统下SecureCRT安装配置全攻略:从零搭建高效远程终端环境

1. 项目概述:为什么在Win11上安装SecureCRT是运维与开发的刚需 如果你是一名网络工程师、系统管理员,或者日常需要频繁登录Linux服务器、交换机、路由器进行调试的开发者,那么SecureCRT这个名字对你来说一定不陌生。它不仅仅是一个终端模拟软…

2026/8/7 8:18:43 阅读更多 →
UE5 GAS与设计心理学结合,打造流畅直观的RPG属性面板

UE5 GAS与设计心理学结合,打造流畅直观的RPG属性面板

1. 项目概述:当RPG属性面板遇见UE5 GAS与设计心理学 在UE5里做RPG,属性面板几乎是每个玩家都会高频交互的界面。它不仅仅是几个数字和进度条的堆砌,更是连接玩家与游戏角色成长系统的核心桥梁。一个设计糟糕的属性面板,会让玩家在…

2026/8/7 8:18:43 阅读更多 →
CANoe中LIN总线干扰测试:从原理到实战的完整指南

CANoe中LIN总线干扰测试:从原理到实战的完整指南

1. 项目概述:为什么要在CANoe中对LIN总线进行干扰测试? 如果你正在从事汽车电子网络测试,尤其是负责车身舒适性模块(比如车窗、雨刮、座椅、灯光)的验证工作,那么LIN总线对你来说一定不陌生。作为CAN总线的…

2026/8/7 8:17:43 阅读更多 →

最新新闻

NavTab新标签页插件:打造纯净高效的浏览器首页

NavTab新标签页插件:打造纯净高效的浏览器首页

最近在整理浏览器书签时,发现很多新标签页插件要么功能臃肿、广告繁多,要么自定义程度低、界面杂乱。对于追求效率和纯净体验的开发者来说,一个简洁、高效、无干扰的新标签页至关重要。经过一番搜寻和试用,我发现了一款名为 NavT…

2026/8/7 9:11:07 阅读更多 →
数字绘画工程化:从角色描述到完整插画的系统工作流

数字绘画工程化:从角色描述到完整插画的系统工作流

在实际数字绘画创作中,如何将一句简单的角色描述,例如“一个( )岁的美少女”,转化为一幅生动、有说服力的插画,是许多创作者,尤其是同人画师和概念设计师需要掌握的核心技能。这个过程远不止是“…

2026/8/7 9:11:07 阅读更多 →
构建本地化加密货币市场分析工具:从数据获取到可视化实践

构建本地化加密货币市场分析工具:从数据获取到可视化实践

这次我们来看一个技术分析工具在加密货币市场预测中的应用。虽然标题直接指向了“大饼”(比特币)和“以太”(以太坊)的价格方向预测,但这本质上是一个结合了数据分析、市场情绪解读和技术指标研判的复杂课题。对于开发…

2026/8/7 9:11:07 阅读更多 →
COMSOL拓扑优化在储能电池冷板设计中的应用与实战

COMSOL拓扑优化在储能电池冷板设计中的应用与实战

这次我们来看一个储能电池热管理领域的实用技术: 冷板拓扑优化 。对于追求高能量密度、长寿命和稳定性的储能系统来说,热管理是核心挑战。传统的冷板设计往往依赖经验或简单规则,难以在散热效率、流阻和材料用量之间找到最优平衡。拓扑优化…

2026/8/7 9:11:07 阅读更多 →
CDR魔镜插件批量替换教程:CorelDRAW自动化排版实战

CDR魔镜插件批量替换教程:CorelDRAW自动化排版实战

这次我们来看一个专门为 CorelDRAW 用户设计的效率工具——CDR魔镜插件。这个插件最核心的功能,就是解决设计师在处理大量证书、名片、工牌等模板文件时,最头疼的批量信息替换问题。想象一下,你需要为几百个学员制作结业证书,或者…

2026/8/7 9:11:07 阅读更多 →
用检索增强生成让大模型更强大,这里有个手把手的Python实现

用检索增强生成让大模型更强大,这里有个手把手的Python实现

自从人们察觉到能够运用自身专有的数据以使大型语言模型也就是 LLM 变得更为强大之后, 人们便持续在探讨怎样去有效地把 LLM 的一般性知识同专有数据整合到一块。针对此状况人们同样一直处于争论之中, 其中一派观点觉得是微调更合适, 另一派观点则认为检索增强生成也就是也就是…

2026/8/7 9:10:07 阅读更多 →

日新闻

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南

为什么scrcpy成为Android投屏的终极解决方案:完整实战指南 【免费下载链接】scrcpy Display and control your Android device 项目地址: https://gitcode.com/GitHub_Trending/sc/scrcpy 想要将Android手机屏幕完美投射到电脑上,享受大屏操作的自…

2026/8/7 0:00:19 阅读更多 →
如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南

如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南

如何在5分钟内掌握Tom Select:打造现代化表单选择器的终极指南 【免费下载链接】tom-select Tom Select is a lightweight (~16kb gzipped) hybrid of a textbox and select box. Forked from selectize.js to provide a framework agnostic autocomplete widget wi…

2026/8/7 0:00:19 阅读更多 →
5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件

5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件

5分钟快速上手:NSZ压缩工具终极指南,轻松管理Switch游戏文件 【免费下载链接】nsz NSZ - Homebrew compatible NSP/XCI compressor/decompressor 项目地址: https://gitcode.com/gh_mirrors/ns/nsz 你是否在为Nintendo Switch游戏文件占用大量存储…

2026/8/7 0:00:19 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/6 22:02:27 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/6 22:02:27 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/6 22:02:27 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/5 23:28:39 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/6 22:02:28 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/5 23:46:51 阅读更多 →