返回

文章详情

Celld:自托管的、分布式的持久对象

Hacker News2026年8月13日 04:37

您的 Workers 和 Durable Objects 代码不变(支持的 APIs →)您的数据存放在您拥有的存储桶中,以规模计算便宜几个数量级。安装 58 MB 的静态可执行文件,或运行 docker 容器,或只需告诉您的代理 ❯ 使用 vite 创建分布式聊天应用,使用 celld.dev 和 exe.dev,2 台虚拟机。关键特性:持久性,每个单元的写入者(按时代划分)为 1,确认的写入在强杀后丢失 0,RPO = 0,持久写入延迟(区域本地)约 90 毫秒,节点丢失后的故障转移,0 丢失约 20 秒,速度(温热状态)无状态请求 p50 / p99 为 0.2 / 0.3 毫秒,无状态吞吐量 / 工作者线程约 94,000 请求/秒,唤醒一个休眠的单元约 4 毫秒。密度与成本:每个常驻单元的 RAM 为 0.47 MB,8 GB 节点中常驻单元为 2,500 单元,非活跃单元成本约为 0 存储桶操作 $ / 常驻单元-月约为 $0.02。兼容性:支持的 Workers/DO APIs 文档 → 速度和密度:一个节点,微不足道的单元,Apple M 系列笔记本电脑通过环回。舰队 vCPU 较慢 —— 在 2 vCPU 节点上的激活 p50 为 35.9 毫秒。持久性:在一个区域中,4 vCPU / 8 GB 的舰队,对抗区域本地存储桶。故障转移是对加载节点的 SIGKILL,每个房间在恢复后都经过验证。如何测量这一点 → 每月成本与常驻舰队规模 0.11101001k10k100k$1$10$100$1k$10k$100k$1M◄ DO 免费 / 更便宜的 10 个常驻单元 — DO 每月 $42 · celld 每月 $49 100 个常驻单元 — DO 每月 $415 · celld 每月 $49 1,000 个常驻单元 — DO 每月 $4,150 · celld 每月 $49 10,000 个常驻单元 — DO 每月 $41,500 · celld 每月 $195 100,000 个常驻单元 — DO 每月 $415,000 · celld 每月 $1,949 100 个常驻单元 — $49/月,1,000 个常驻单元 — $49/月,10,000 个常驻单元 — $195/月,100,000 个常驻单元 — $1,949/月,1.2 个常驻单元 — DO 包含的持续时间到期。低于一个常驻单元 — 假定为付费计划;免费计划以 $0 进行覆盖。持久对象 CELLD 常驻单元 每月成本:持久对象:工作者付费,每月 $5,加上 $4.15 每个常驻单元-月;其免费计划覆盖玩具规模。celld:整个 $48 / 8 GB 节点(DigitalOcean 东部列表),每个节点限制在 2,500 个常驻单元;容量分步增加。工作负载之前的基本成本:应用流量和写入会增加计算和存储桶使用。单击一个点以查看建模账单。如何工作:存储桶是协调者——无成员协议,无故障检测器,无共识。所有权是您存储桶中的一条记录,通过一次原子写入来声明。celld 内置的复制器持续将每个单元的 SQLite 状态作为 LTX 段传输到该存储桶。您的基础设施 您的 S3 存储桶 SQLite / LTX 数千个非活跃单元 celld 在其自己的虚拟机上的请求 / 响应:celld 在其自己的虚拟机上,每个单元是一个 sqlite 数据库 LTX,您的基础设施 请问请求 / 响应,celld 在其自己的虚拟机上,每个单元是一个 sqlite 数据库 LTX,您的 S3 存储桶 SQLite / LTX 数千个非活跃单元。可靠性:Durable Objects 是一个强大的编程模型。celld 保持该模型,同时将位置、状态和操作证据移动到您选择的基础设施。自己运行模型时变化的内容。位置:没有共享机器可以丢失;单元的身份与机器不融合——所有权是您存储桶中的租约,由比较和交换授予。丢失一个节点,另一个节点获取租约,几秒钟内恢复单元:您的舰队正在读取您的存储,而不是一个供应商恢复您无法看到的放置。爆炸半径:您选择的故障域,您的舰队仍然依赖于其机器、网络和存储桶提供商。变化的是租户关系:没有共享的 Durable Objects 调度程序或放置层能将您的应用程序耦合到另一客户的工作负载。可读性:您可以读取的故障,当一个单元行为不当时,证据在您的磁盘上——所有权记录、SQLite 和 LTX 文件以及日志。您通过 sqlite3 和 grep 回答“我的单元发生了什么”,而不是一个拒绝说明的状态页。自托管并不自动更可靠。它使故障域明确且可检查:您的节点、您的存储桶提供商以及您的操作选择。需要明确的是,我们热爱 Cloudflare——这页就是由 Cloudflare Worker 提供的。Durable Objects 模型——一个单线程对象,拥有自己的存储,通过名称寻址——是近年来分布式系统最好的原语之一,而该设计是 Kenton Varda 和 Cloudflare Workers 团队的。celld 是对他们想法的情书;如此优秀的原语应该在任何地方运行。一个完全依赖 S3 的有状态分布式系统,LTX 是 Litestream 的副本格式,来自 Ben Johnson。

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

请我喝杯咖啡