Deno 加入 Cloudflare

💡 原文英文,约2300词,阅读约需9分钟。
📝

内容提要

Cloudflare宣布Deno团队加入,共同简化Workers和Durable Objects的自托管。Deno创始人Ryan Dahl此前推出用Rust编写的celld,仅依赖对象存储,可分布式运行Workers与Durable Objects。Cloudflare的workerd虽已开源,但Durable Objects仅支持单实例。双方将合并celld与workerd,让开发者能在自有基础设施上轻松构建分布式应用。

🔎

延伸解读

自托管 Durable Objects 的现状与挑战

文章指出,Cloudflare 的 workerd 虽已开源,但其 Durable Objects 支持仅限于单实例,适合本地测试但无法扩展。生产环境的 Durable Objects 路由实现复杂,依赖多个外部服务,不适合自托管。Deno 的 celld 则专为自托管设计,仅依赖对象存储,可分布式运行 Workers 与 Durable Objects。双方合并后,将把 celld 的分布式能力引入 workerd,使开发者能在自有基础设施上运行可扩展的 Durable Objects。

合并 celld 与 workerd 的技术路径

根据文章,Ryan Dahl 和 Bert Belder 将领导新项目,把 celld 的代码和理念合并回 workerd,目标是让 workerd 的自托管成为一等公民。celld 用 Rust 编写,仅依赖对象存储,可运行多个实例并共享一个存储桶,实现分布式应用。合并后,开发者将能使用与 Cloudflare 相同的 Workers 编程模型,在自有基础设施上构建分布式应用,而无需依赖 Cloudflare 的全球网络。

对开发者的实际影响

文章强调,这一合并旨在让开发者能在更多地方使用相同的原语。对于担心供应商锁定的开发者,celld 和 workerd 的开源与自托管能力提供了迁移路径。Cloudflare 也承认,开源和提供逃生舱口是良好的商业策略。未来,开发者可以自托管 celld 或 workerd,并期待更多公告。这可能会降低构建分布式应用的门槛,尤其是需要实时协作和分布式状态的应用。

❓

Q&A

Deno 团队加入 Cloudflare 后,主要目标是什么?

Deno 团队加入 Cloudflare 的主要目标是大幅简化 Workers 和 Durable Objects 的自托管,让开发者能在自有基础设施上使用相同的编程原语构建分布式应用。

celld 是什么?它有什么特点?

celld 是 Ryan Dahl 用 Rust 编写的项目,旨在分布式运行 Workers 和 Durable Objects。它只有一个二进制文件,唯一的外部服务依赖是对象存储,可以运行多个实例来构建分布式应用。

workerd 在自托管方面存在什么主要限制?

workerd 虽然已经开源,但其 Durable Objects 支持仅限于单实例,适合本地测试但无法扩展。生产环境的 Durable Objects 路由实现依赖大量外部服务,不适合自托管。

Cloudflare 为什么对 Deno 团队发布 celld 感到高兴?

因为 celld 是一个与 Cloudflare 自己的 Workers 和 Durable Objects 完全兼容的实现,同时专注于可自托管和可扩展。这正是 Cloudflare 一直想构建但未能实现的,而 Deno 团队帮他们完成了。

Cloudflare 开源 workerd 的原因是什么?

Cloudflare 开源 workerd 是因为大型客户(如 Shopify)明确表示,除非 Workers 运行时开源,否则他们无法在其上构建。开源提供了逃生通道,有助于业务,即使有客户迁移走,也有更多客户留下。

celld 和 workerd 将如何整合?

Ryan Dahl 和 Bert Belder 将领导一项新工作,把 celld 的代码和理念合并回 workerd,使 workerd 的自托管成为使用 Workers 编程模型构建和运行应用的一流支持方式。

🏷️

标签

➡️

继续阅读