据 Forbes 报道,Cloudflare 已收购 Deno。Deno 是由 Node.js 发明者 Ryan Dahl 创建的服务器端 JavaScript 和 TypeScript 运行时。

The Register 指出,Deno 在 Cloudflare 内部将不再拥有独立的发展前景。Cloudflare 计划维持该运行时的维护工作一年,随后停止其开发。对此,Dahl 表示接受,并称:“如果你选择 Node.js 来构建服务器,那你做错了。”
从 Deno Deploy 到 celld:简化分布式应用底层复杂性
Dahl 在 Deno 官方博客中回顾了这一转变的起因。他的团队最初致力于平台 Deno Deploy,旨在让应用程序的运行尽可能简单。然而,在构建和运营 Deploy 的过程中,他们发现开发者体验之下仍隐藏着巨大的复杂性。Dahl 希望进一步简化这一底层架构。
这促成了 celld 项目的诞生。基于 Cloudflare Workers 编程模型,celld 允许开发者从一开始就构建分布式应用,同时保持系统的易操作性。Dahl 强调:“最令我兴奋的是,扩展性被内置于编程模型中,而不是作为基础设施由每个应用自行组装……我们希望将这种编程模型成为构建服务器的默认方式,无论用户是在 Cloudflare 网络还是自有基础设施上运行。”
加入 Cloudflare 意味着重新聚焦努力方向。根据官方声明:
- Deno 将保持开源状态,欢迎其他人继续参与其开发。
- Deno Deploy 将继续运营六个月,随后关闭。对于付费客户迁移至 Cloudflare Workers,将提供迁移支持。
- Deno 的 JSR 包注册表(用于 JavaScript 和 TypeScript)将继续运营,其基础设施将迁移至 Cloudflare。
解决可移植性痛点与自主托管方案
Forbes 分析认为,此次收购将 Cloudflare Workers 长期存在的一个反对意见——即在其上构建的应用难以轻易迁出——转化为卖点。对于评估 Serverless 和边缘平台的 CIO 而言,可移植性现在有了具体的解决方案。
今年八月发布的 celld 是一个单一的 Rust 二进制文件,能够在多台机器上运行 Workers 和 Durable Objects,仅依赖对象存储作为外部组件。运营商可以针对一个存储桶运行多个 celld 实例,软件负责处理放置、路由和持久化。Dahl 和 Belder 目前正领导一项工作,旨在将 celld 合并进 workerd,并使自主托管成为运行 Workers 应用的受支持方式。这意味着客户可以在 Cloudflare 网络上构建应用,并在无需重写的情况下将其移至私有数据中心。
Durable Objects 抽象与 AI 时代的计算需求
Dahl 在 Cloudflare 博客上写道:“通过 Deno,我们改善了编写 JavaScript 的体验,但我们并没有从根本上改变开发者需要在运行时周围组装的内容。更大的问题在于网络化应用:分布计算、协调状态、数据存储以及自动扩展以满足需求。”
他提到,当阅读关于 Cloudflare Durable Objects 的资料时,解决方案变得清晰。Durable Objects 提供了一种强大的抽象:带有 SQLite 数据库的分布式单例。每个 Durable Object 就像一个小巧、可单独寻址的服务器,拥有自己的关系型数据库。其 JavaScript 执行是单线程的(易于推理),处理 WebSockets,并且可以同步访问本地 SQLite 数据库。例如,通过为每个聊天频道使用一个 Durable Object,即可分片数据和 WebSocket 连接,从而实现应用的可扩展性。
Dahl 表示:“这种模型赋予开发者的杠杆作用令人兴奋:计算、关系型数据库、队列以及专为跨机器分布式应用设计的实时通信原语。”
Node.js 的历史包袱与未来展望
The Register 解释称,Dahl 及其 12 名 Deno 同事将致力于构建 Cloudflare 的 Workers 平台,并可能将其扩展为开源用途。Dahl 认为这是正确的方向。“目前,其他所有服务器实际上都在 Linux VM 层运行。这不是 Cloudflare Workers 的情况,”他说。
Deno 于 2018 年首次亮相,作为 Node.js 的重写版本。“Deno”是“Node”的变位词,旨在修复 Dahl 认为他在 Node.js 中犯下的错误,包括内置 fetch、权限模型和原生 TypeScript 支持等。Sequoia 曾在 2022 年为 Dahl 的公司投资 2100 万美元。截至 8 月,Deno 拥有 40 万月度用户。然而,Node.js 的巨大引力使得 Deno 难以实现真正的突破。
“多年来我们在 Deno 上的工作发现,你很难偏离 Node.js 太多,”Dahl 告诉 The Register,“随着我们继续争取 Deno 的采用率,我们发现不得不违背一些最初的承诺,变得更加兼容 Node.js,这使我们沦为一种替代性的 Node.js 实现。”
未来一年内,Cloudflare 将为 Deno 提供错误修复和安全补丁,而 Dahl 正在为这个 MIT 许可证的开源项目寻找新的归宿。
文章指出,Dahl 的工作可能带来“服务器端 JavaScript 的又一次革命性转折”,提供一个每实例仅需 300 KB 内存的运行时,而非 Node/Deno 目前所需的数百兆字节。对于云提供商而言,尤其是服务于旺盛的代理市场(agentic market)时,这些节省会迅速累积。
Dahl 在 Deno 博客上总结道:“对更好抽象的需求在 AI 领域尤为迫切。Durable Objects 汇集了对代理框架特别有用的功能:廉价的无服务器执行、持久状态、WebSockets 以及高级 JavaScript 接口。这是我最期待探索的方向,也是 celld 专注于 Durable Objects 的原因。”





