推文
@Zen_with_AI · 2026-10-15 01:45
小路带你看大厂架构|Cloudflare D1 控制面:几百万个 SQLite 库怎么管 AI 编程和 vibe coding 把数据库模型翻了个个:以前是一个应用配一两个大库,现在是一个用户、一个 preview 环境、一个租户各配一个小库。D1 是 Cloudflare 的 serverless SQLite 服务,过去一年 live 数据库数涨 15 倍,两年涨 65 倍,日活库涨 18 倍。ChatGPT Sites 就用 D1 做自定义指标、排行榜和评论。 关键设计是控制面和数据面彻底分离。每个 D1 库背后是一个 SQLite Durable Object。数据面(查数据)只走边缘,绝不经过中心化单区域组件;控制面(建库、删库、CRUD)可以依赖中心 Postgres;后台异步面(计费、分析)用最终一致性 + 队列。 路由元数据放在全球分布的 Workers KV,cache miss 才查中心库。访问 Postgres 走 Hyperdrive 做连接池和路由优化,读副本优先。建库流程以 Postgres 写入为"创建检查点",DO 初始化和 Postgres 写入失败就换新 ID 重试,Postgres 始终是事实来源。 最巧妙的是心跳自纠:每个 Durable Object 每 30 秒(带 jitter)向控制面心跳,拉取最新状态。重试产生的孤儿 DO 会在心跳时发现自己不存在,自动清理。失败被当成常态设计,系统自己纠偏,而不是靠人工擦屁股。 https://blog.cloudflare.com/d1-control-plane/
曝光 246 · 评论 0 · 点赞 3 · 书签 0