Show HN: SQLite for Rivet Actors – 每个代理、租户或文档一个数据库

发布: (2026年3月1日 GMT+8 00:11)
3 分钟阅读

Source: Hacker News

概览

Hey HN! 我们之前在这里发布了 Rivet Actors [1],作为 Cloudflare Durable Objects 的开源替代方案。
今天我们发布了针对 actor 的 SQLite 存储(Apache 2.0)。

每个 actor 的 SQLite 数据库

每个 actor 都拥有自己的 SQLite 数据库,这样你可以拥有数百万个独立的数据库——每个代理、租户、用户或文档各一个。

适用场景

  • AI 代理 – 为每个代理提供消息历史、状态、向量嵌入的专属数据库
  • 多租户 SaaS – 真正的租户隔离,无需 RLS hack
  • 协作文档 – 每个文档拥有自己的数据库,内置多人协作
  • 每用户数据库 – 隔离、水平扩展、在边缘运行

按实体拆分数据的思路并不新鲜:Cassandra 和 DynamoDB 使用分区键实现水平扩展,但你只能使用僵硬的模式(“单表设计” [3])、查询受限且迁移痛苦。每个实体对应的 SQLite 在不牺牲这些的前提下提供相同的可扩展性 [2]。

与其他方案的对比

  • Cloudflare Durable Objects & Agents – 与 Rivet Actors 最相似,具备同址的 SQLite 与计算,但是闭源且被供应商锁定。
  • Turso Cloud – 平台优秀,但闭源且使用场景不同。客户端通过网络查询,读取速度慢或可能是陈旧数据。Rivet 的单写入 actor 模型使读取保持本地且实时。
  • D1、Turso(数据库本身)、Litestream、rqlite、LiteFS – 这些都是运行单一 SQLite 数据库并实现复制的优秀工具。Rivet 则用于运行大量相互隔离的数据库。

实现细节

SQLite 与每个 actor 同进程运行。自定义 VFS 将写入持久化到 HA 存储(FoundationDB 或 Postgres)。

Rivet Actors 还提供:

  • 实时(WebSockets)
  • React 集成(useActor
  • 水平可扩展性
  • 空闲时自动休眠的 actor

链接

  • GitHub:
  • 文档:
  • 参考资料:
    • [1]
    • [2]
    • [3]
0 浏览
Back to Blog

相关文章

阅读更多 »