Node.js 创造者 Ryan Dahl 花了八年时间试图用 Deno 纠正前作的设计缺陷,最终选择把整个团队打包卖给 Cloudflare,亲手为 Deno 运行时写好停服讣告。
2026 年 10 月 9 日,Cloudflare 与 Deno 联合公布全资收购协议。Deno 历史累计拿到的 2600 万美元融资在此刻彻底完成清算,换来的是一份干脆的资产处置时间表:商业云托管平台 Deno Deploy 预定 6 个月后关停;Deno 官方运行时仅维持 1 年的月度安全补丁与错误修复,至 2027 年 10 月彻底终止官方功能迭代,完全甩给社区。
外围资产的处理更显现实。JSR 包注册表的基础设施整体搬迁至 Cloudflare 继续运行,核心底层库 rusty_v8 留用,Deno 运行时本身则交出主力位置。Ryan Dahl 在社交论坛直言自己完全赞成给 Deno 安排安乐死。他坦白承认,Deno 掉进了 Node 兼容性的引力井,既然旧系统跑得好好的,微弱的体验提升解决不了问题,重新造一个 Node 毫无意义。
坠入兼容泥潭:2600 万美元买来的臣服
当年 Deno 举旗起义,靠的是开箱即用 TypeScript、原生 URL 导入、默认安全的沙箱权限。但这套理想主义设计一头撞上了 npm 筑起的高墙。
包括红杉资本在 2022 年领投的 2100 万美元在内,Deno 账上累积的 2600 万美元弹药,大部分没有花在开辟新世界,而是耗在了给旧世界补课。开发者的代码可以随时重写,整个行业的依赖网络却搬不动。企业项目离不开数以万计的旧 npm 包,Deno 最终调转主力团队,花几年时间去修修补补兼容层,把原本用于创新的精力全部消耗在追赶 Node 的怪癖行为上。
兼容即臣服。当挑战者把九成资源花在向旧标准低头时,就抹平了自己的差异化壁垒。防守方的演进更让追赶显得尴尬。Node.js 在 v20.0.0 引入权限隔离机制,并在 2025 年 1 月的 v22.13.0 里稳定上线。原地等待旧系统修补缺陷的代价,远比把全套业务迁往 Deno 小得多。
幕后真正主角:celld 如何为 workerd 补齐短板
Cloudflare 并不是做慈善,真正看中的是 Deno 团队在 2026 年 8 月拿出的开源分布式调度工具 celld。

长久以来,Cloudflare 虽然开源了底层执行引擎 workerd,允许开发者单机跑 Workers,但其最核心的分布式 Actor 组件 Durable Objects 却无法脱离专有数据中心自建。单机 workerd 缺少跨节点协调机制,直接掐死了企业在本地私有化部署集群的可能。
celld 的巧思在于做减法。这个 Rust 单一二进制程序甩掉了庞大的独立共识集群,仅靠标准对象存储处理持久化与状态协调。根据官方数据,单台 48 美元/月的 8GB 节点就能容纳约 2500 个常驻 Cell。
但融合并不轻松。处于 v0.6.2 beta 的 celld 目前粗糙得很:单集群只支持单应用,没有多租户调度。更关键的是,虽然 Workers 自 2026 年 8 月 4 日起在默认兼容日期里启用了 Node.js 兼容层,但大部分模块仍依赖存根实现。celld 目前支持的兼容子集比 Workers 本身还要窄,且天然无法调用 Workers AI、Vectorize 等公有云专有绑定。两套系统的合并,是在一个受到严密限制的框架下重理边界。
逃生舱陷阱:解了托管之缚,深陷范式之笼
Cloudflare 首席工程师 Kenton Varda 解释这次整合时表示,为开发者提供开源的逃生通道反而能促进业务增长,打破市场对供应商锁定的警惕。
这套说辞极具迷惑性。表层上看,开发者确实能拿着开源的 workerd 加 celld 跑在自己的服务器上,不再被 Cloudflare 的账单卡死。但在工程实践中,逃生通道换来的是底层通用性的彻底丧失。

Deno Deploy 原本提供的是完整的标准运行时抽象,支持本地文件系统写入和派生子进程。Cloudflare Workers 底层则是轻量 V8 Isolate,有着 128 MB 内存软上限,剥离了原生文件系统。
| 评估维度 | Deno Deploy 现状 | Cloudflare Workers / DO 标准 | 架构改造成本与替代路线 |
|---|---|---|---|
| 基础配额与定价 | Pro $20/月 (5M 请求) / Builder $200/月 | Standard $5/月 (10M 请求 + 30M CPU 毫秒) | 费用更低,但需重新测算 CPU 毫秒开销 |
| 执行环境边界 | 支持文件系统写入与子进程 | 128 MB 内存软上限,无原生文件系统 | 复杂任务需退守至 Cloudflare Containers |
| 状态存储模型 | Deno KV 原生集成,开箱即用 | SQLite 存储单对象上限 10 GB ($0.20/GB-月) | 改用 Durable Objects 或 D1 关系型存储 |
| 并发与调用特性 | POSIX 兼容常规服务 | 单对象约 1000 RPS 软限制,单线程串行化 | 高并发需重构 Actor 分片逻辑 |
如果代码里写满了 Deno.readFile、Deno.Command 或深度依赖 Deno KV,迁移就必须全盘重写。企业如果接受了这套方案,代码就必须全面转为 Fetch Handler 路由、资源绑定和 Durable Objects 状态对象。
这构成了新的技术债务。代码一旦脱离标准 Node.js HTTP 容器模式,改造成 Cloudflare 的边缘状态机,就再也无法逆向迁回传统的 AWS Lambda 或独立 Docker 容器。基础设施的锁解开了,编程模型的锁却焊得更死。
终局收拢:智能体洗牌与独立运行时的破产
促使开发焦点彻底转向的,是智能体应用对基础设施的硬性洗牌。

传统 Serverless 是无状态的短命函数,而 AI Agent 需要长连接挂载、本地上下文维持与双向通信。Durable Objects 的本质是一个单线程串行状态机,挂载本地 SQLite,单对象处理上限约 1000 RPS,天然匹配智能体的隔离容器需求。Dahl 看透了这一点:继续优化脚本执行速度已无意义,如何低成本调度上百万个有状态单元,才是接下来的胜负手。
天下熙熙,皆为利来。风投机构在过去几年里幻想着靠独立 JavaScript 运行时孵化出上市公司,如今这个泡影被戳得一干二净。早前追求极限速度的 Bun 被 Anthropic 招安,如今 Deno 并入 Cloudflare,独立运行时的商业化闭环彻底宣告破产。
这条赛道最终只剩两个终局:要么像 Node.js 那样,靠非营利基金会退居为全行业的公共品;要么像 Deno 一样,放弃单兵作战,把执行引擎折价并入云巨头的算力体系,充当底层管道。
