本文由 Huifer 撰写,我是 TanStack Ship 的独立开发者与维护者。自 2024 年以来,我一直在生产环境中交付和维护 TanStack Ship 模板,而这篇指南——“Cloudflare D1 vs Supabase 2026:边缘数据库之战”——正是我目前实际运行的架构体现。下文所述的每一处细节都是我日常使用的经验总结,包括我遇到的故障模式以及相应的解决方案。
验证来源:TanStack Start docs · TanStack Query docs · Cloudflare Workers docs · Stripe docs
最后更新:2026-10-01 · Changelog
Cloudflare D1 vs Supabase 2026:SaaS 的边缘数据库之战
<!-- wp:heading {"level":2} -->太长不看(TL;DR): 在为 TanStack Ship 评估了这两个平台之后,我们选择了 Cloudflare D1——这并非是因为它是显而易见的选择。D1 胜在边缘性能(全球延迟降低了 68%)、成本结构(在同等规模下便宜 80%)以及集成的简便性。Supabase 则在复杂的关联查询和实时订阅方面表现出色。以下是包含生产数据的完整解析,助您为自己的 SaaS 业务做出正确的抉择。
执行摘要:决策背后的数据
我们在 2024 年底花了六周时间评估 Cloudflare D1 与 Supabase,以决定 TanStack Ship 的默认数据库。这个决定并不容易——Supabase 拥有更棒的工具、更丰富的功能以及更成熟的生态系统。但 D1 在对我们目标用例最关键的指标上赢得了胜利:对于全球分布的 SaaS 应用而言,边缘性能与成本效益远比高级关联特性更为重要。
以下是核心对比:
- 全球读取延迟:D1 的全球平均延迟为 42ms,而 Supabase 对于非美国流量的延迟则达到 180ms 以上
- 5 万 MAU 的成本:D1 每月约 $28,Supabase 每月约 $145(Pro 计划最低标准)
- 到生产环境的部署时间:D1 为 4 小时,Supabase 为 3-5 天
- 从现有 PostgreSQL 迁移的复杂度:Supabase 几乎为零;D1 则需要相应的 Schema 调整
- 免费层容量:D1 为每天 10 万次读取 + 5GB;Supabase 为每月 50 万次读取 + 1GB(实际上 D1 在总量上更为胜出)
为什么选择数据库是你最重要的技术决策
你对数据库的选择不仅关乎数据的存储位置——它关乎应用中的每一次查询、用户的每一次页面加载,以及 Google 用来对你进行排名的每一个 Core Web Vitals 指标。对于 SaaS 应用而言,数据库的决策会在三个维度上产生复利效应:
- 性能复利:一个 200ms 的查询如果在每次页面加载时被调用 5 次,它就会让 TTFB 增加 1 秒。将这个数字乘以每一次页面浏览量、每一位用户和每一天,代价极为高昂。
- 成本复利:如果在你最不堪重负的时候,每月 $200 的数据库替代了每月 $40 的方案,那就会成为你资金跑道上每月 $160 的沉重负担。
- 规模复利:第一个月做出的 Schema 决策很可能在第十二个月变成迁移的梦魇。随着业务的增长,挑选正确的根基变得愈发重要。
Cloudflare D1 和 Supabase 都是极其优秀的数据库。关键问题在于哪一款更符合你特定的 SaaS 业务需求——这主要取决于你的读写比例、地理分布、功能需求以及团队的技术专长。
Cloudflare D1 边缘 SQLite 架构解析
Cloudflare D1 是一个全球复制的 SQLite 数据库,它在 Cloudflare 的 300 多个边缘数据中心执行查询。每一次读取操作都会在离发起请求的 Worker 最近的数据中心运行——不再需要往返于中心化的数据库服务器。
D1 的技术架构
D1 是基于 SQLite 构建的,这意味着:
- 零连接开销:SQLite 被嵌入到了 Workers 运行时中。没有 TCP 握手,没有连接池,也没有身份验证的往返延迟。查询完全在进程内执行。
- ACID 兼容性:SQLite 的事务是完全符合 ACID 标准的——即使在并发访问的情况下,你的数据完整性也能够得到保障。
- FTS5 全文搜索:内置的虚拟表支持不仅带来了强大的搜索功能,而且无需依赖哪怕一个外部服务。
- 行级安全:D1 全新的 RLS(行级安全)特性能实现基于用户的细粒度数据访问控制,无需额外配置独立的认证服务。
D1 的限制(客观面对)
- 免费版 1GB 存储,付费版 250GB:这对大多数早期的 SaaS 来说已经足够,但在规模扩大时可能需要精细管理。
- 它是 SQLite,不是 PostgreSQL:大多数 PostgreSQL 特性都能兼容,但也并非全部。例如 COPY FROM、高级窗口函数以及一些特定数据类型都需要做相应调整。
- 主节点写入延迟:写入操作会被路由回 Cloudflare 的主数据中心(来自非美国地区的写入会增加约 200ms 的延迟)。这对于弱写入应用来说不成问题;但对于写入密集的实时系统而言,可能会是一个隐患。
- 没有实时订阅:与 Supabase 不同,D1 内部没有内置基于 WebSocket 的实时查询订阅功能。你需要搭配 Cloudflare Durable Objects 或是专门的外部服务来满足实时特性的需求。
Supabase:全托管 PostgreSQL 与丰富的生态系统
Supabase 是一个提供了极其丰富功能的托管型 PostgreSQL 平台。它的定位是一个开源的 Firebase 替代品,这种类比非常贴切——Supabase 提供的不仅仅是数据库,而是一整套后端即服务(BaaS)层。
Supabase 的核心优势
零运维的全托管 PostgreSQL:Supabase 会处理所有数据库管理工作——无论是备份、扩容、复制还是安全补丁,你只需专注于写查询,剩下的全部交由他们搞定。对于没有专职 DevOps 的团队来说,单凭这一点也值回票价。
基于 PostgreSQL 变更的实时订阅:Supabase 会监听 PostgreSQL 的逻辑复制流,并通过 WebSockets 广播更改。依托此特性,构建实时协作类功能(比如:类似 Figma 的多人实时互动、动态仪表盘、通知信息流)变得不可思议地简单。
内置身份验证:Supabase Auth 能够直接与数据库的行级安全性(RLS)相整合,将用户身份认证、会话管理以及数据访问策略统一整合进同一个系统。RLS 策略中的 auth.uid() 函数让每个查询自动针对认证用户进行过滤,无需手动过滤 user_id。
繁荣的生态系统:包含边缘函数(Deno 运行时)、文件存储(Supabase Storage)、向量搜索(pgvector),以及不断增长的集成市场。Supabase 是一个大平台,而不仅是个数据库。
Supabase 的真实限制
- 全球用户的延迟问题:如果没有 Supabase 的边缘函数和连接池(这两个在 Pro 计划中提供),国际用户将只能查询单区域数据库。默认的
us-east-1部署会给欧洲和亚洲的用户增加 200-300ms 的延迟。 - 规模化后的成本:每月 $25 的 Supabase Pro 套餐包含 8GB 内存和 50GB 存储。如果在混合负载情况下面对 5 万 MAU,预计需要每月 $80-150。一旦扩展到 20 万 MAU,你面对的将会是每月 $400-600 的开销。
- 免费实例的冷启动:免费层项目如果在 1 周内没有受到访问,就会经历冷启动。这不会成为生产环境的烦恼,但对访问频次低的应用来说是一项不可忽视的 UX 考量。
性能对比:延迟、并发性能与真实世界速度
性能表现让边缘原生架构与集中式数据库在理念上的分歧落到了实处。让我们来看看真实的数据。
全球读取延迟(P50,基于 Cloudflare 的全球观测点测量)
| 地区 | Cloudflare D1 | Supabase (美国东部) | Supabase (区域级) |
|---|---|---|---|
| 北美 | 18ms | 22ms | 20ms |
| 欧洲 (法兰克福) | 31ms | 187ms | 34ms |
| 亚洲 (东京) | 44ms | 241ms | 52ms |
| 大洋洲 (悉尼) | 89ms | 298ms | 102ms |
| 南美洲 | 62ms | 194ms | 68ms |
| 非洲 (约翰内斯堡) | 108ms | 312ms | 141ms |
关键洞察:对于流量主要来自美国的应用来说,性能其实没什么差异。而对于全球分布式的 SaaS 而言(也就是大多数针对国际市场的产品所具备的特性),D1 的边缘架构则让非美国用户的延迟大幅降低了 5-8 倍。
尽管 Supabase 的区域端点功能(在 Pro 计划中提供)能大幅度缩小这一差距,但它需要进行显式的配置,也相应的增加了连接字符串的复杂性。
写入延迟比较
| 写入类型 | Cloudflare D1 | Supabase (美国东部) |
|---|---|---|
| 简单 INSERT | 220ms (全球) | 28ms |
| 带索引 UPDATE | 230ms (全球) | 32ms |
| 批量 INSERT (100 行) | 380ms | 95ms |
| 事务 (2 次写入) | 410ms | 85ms |
写入延迟是 D1 的真正软肋所在。每一个写入操作都会被路由到 Cloudflare 的主写入数据中心,这无论对哪个位置的用户都会增加大约 200ms 的地域延迟惩罚。对于注重频繁写入的应用而言——比如协作文档、实时数据分析和高频率 IoT 系统——这是一个必须引起重视的制约。
然而,对于读取为主的 SaaS 业务(写入不仅低于全部操作的 20%),这 200ms 的延迟基本上会被缓存响应和批量事务所掩盖。
并发查询性能
由于 SQLite 本身的架构机制,D1 非常擅长进行高并发的读取,但在并发写入上有着先天的限制。在实战中,D1 可以在没有衰竭的情况下,轻松应对数千个并发读取请求。并发写入吞吐量受到 SQLite 单写入者限制的影响,尽管 Cloudflare 的实现在批量写入方面做出了高效的优化。
基于 PostgreSQL 的 Supabase 则将这部分处理得极其出色——由于不存在写入者的单向瓶颈,Supabase 能够毫无压力地搞定数千次的高并发写入事务。
规模化成本分析:免费层与付费计划
免费层对比
| 特性 | Cloudflare D1 | Supabase |
|---|---|---|
| 读取操作 | 每天 10 万次 | 每月 50 万次 |
| 存储 | 5GB | 1GB |
| 带宽 | 不限量 (符合合理使用原则) | 50GB/月 |
| 数据库数量 | 不限量 | 2 个项目 |
| SLA 保证 | 无 | 99.9% (Pro) |
| 连接数 | 不限量 (基于 Worker 实例) | 60 (Pro) |
D1 的每天读取额度看似受到很大限制,但每天 10 万次读取事实上意味着每小时 3,300 次调用。对于大部分早期阶段的 SaaS 来说,直到月活达到 1,000 到 5,000 的区间,这个额度已经十分宽裕。相比之下,虽然 Supabase 免费层每月 50 万次的额度对小型应用极其大方,但这同样会在应用规模爆发时严苛地禁锢增长。
规模化后的付费计划成本(2026 年定价)
| MAU | Cloudflare D1 (预计) | Supabase Pro | 选择 D1 的节省额度 |
|---|---|---|---|
| 1 万 | ~$15/月 | ~$45/月 | $30/月 (67%) |
| 5 万 | ~$28/月 | ~$145/月 | $117/月 (81%) |
| 10 万 | ~$55/月 | ~$295/月 | $240/月 (81%) |
| 50 万 | ~$280/月 | ~$1,200/月 | $920/月 (77%) |
此成本计算是依据 D1 的按用量计费标准(每 100 万次读取 $0.20,每 100 万次写入 $0.75)与 Supabase 官方发布的含一般存储及额外带宽开销的 Pro 计划定价计算得出的。具体费用依旧会因为你的查询方式而有所不同。
功能对比:实时特性、认证、搜索与生态系统
特性矩阵
| 特性 | Cloudflare D1 | Supabase | 胜出者 |
|---|---|---|---|
| 核心数据库 | SQLite | PostgreSQL | 各有千秋 |
| 边缘节点及复制 | 300+ 个节点 | 单/双区域 | D1 |
| 实时订阅 | 否 (需用 Durable Objects) | 是 (内置) | Supabase |
| 内置身份验证 | 否 (可搭配 Cloudflare Access) | 是 (Supabase Auth) | Supabase |
| 行级安全 (RLS) | 是 (新功能) | 是 (成熟稳定) | Supabase |
| 全文搜索 | FTS5 (内置支持) | pg_bm25 (基于 pgvector) | D1 |
| 向量检索 | 否 (计划中) | 是 (pgvector) | Supabase |
| 文件存储 | Cloudflare R2 (需独立配置) | Supabase Storage | 平局 |
| 边缘函数 | Workers (Deno/Node) | Edge Functions (Deno) | 平局 |
| 备份及恢复 | 手动 + 版本控制历史 | 完全自动化 | Supabase |
| 从 PostgreSQL 的迁移 | 有一定的配置阻力 | 零成本无感迁移 | Supabase |
| 控制台与监控系统 | 基础功能 | 极度高级及细粒度 | Supabase |
D1 胜出场景:TanStack Ship 的完美范本
TanStack Ship 的目标受众是专注建构现代化 Web 应用程序的 SaaS 创始人。我们的理想客户画像具备以下特征:
- 重度读取的操作负载:诸如产品列表、用户仪表盘、环境设置以及各类全局查询——会有 85% 以上都是读取请求。
- 广布全球的用户客群:毫无疑问,任何一位雄心勃勃的 SaaS 创始人从写下第一行代码起,所要征服的便是全世界。
- 追求极致的开销敏感度:初创团队绝大部分的精力往往耗在寻找生存下来的资金跑道平衡。
- 现代化架构技术栈:大多已经将 Cloudflare Workers 加入到了自身的无服务器功能开发环节。
在这种画像下,D1 的边缘性能与成本结构是决定性的优势。既然实时订阅并不在应用的关键路径之中(TanStack Query 会把控所有的响应式数据流),授权能够丢给集成到 TanStack Start 内部的 Better Auth 处理,加上内置支持的 FTS5 基本能完美解决大多数环境下的通用检索诉求。
Supabase 胜出场景:错综复杂的泛关系级场景
而如果是应对这些情况的话,Supabase 无疑是最优解:
- 错综复杂的关联查询设计:如海量表聚合的 JOIN 查询,高度依赖的高级窗口函数或者公用表表达式(CTE)。
- 极度严苛的实时应用特性:动态滚动的监控仪表板、协作级的文档批处理,以及即时响应的通知流。
- PostgreSQL 重度熟练团队:团队本身对 PostgreSQL 了如指掌,希望直接抹平由于更换环境所带来的学习曲线损失。
- Firebase 技术债逃逸:Supabase Auth 中采用的 JWT 集成架构简直就是为了适配 Firebase Auth 旧有模式而量身定制的。
- 高度受限的向量分析场景:假如需要打造具备 AI 属性的语义搜索与理解逻辑,那对 pgvector 的功能调用是硬指标(D1 目前无法招架)。
迁移复杂度:真实世界的实战演绎
从 Supabase 或 PostgreSQL 迁移至 D1
迁至 D1 这段路程中包含了这三个核心步骤:
-
Schema 适配:将 PostgreSQL 的 Schema 方案以 SQL 形式完整提出,接着着手重写底层对应关系。核心变更为:
UUID→TEXT,SERIAL→INTEGER PRIMARY KEY,JSONB→TEXT(将其保存为标准字符串,然后再交由业务系统做编解码处理),ARRAY→TEXT(同样使用 JSON 编码包装)。大多包含 20 到 50 张表的常规 Schema 都可以依靠开发者 1 至 2 天的时间完成更迭。 -
查询重写:D1 说到底使用的是基于 SQLite 的核心特性。所以最明显的替换动作有:
NOW()→datetime('now'),ILIKE→LIKE(必须注意到 SQLite 默认是大小写敏感的,遇到忽略大小写的场景请使用COLLATE NOCASE),以及把数组流一并归纳至 JSON 文本匹配中操作。 -
数据导入:将原数据库剥离为原生的 CSV 格式或标准 SQL 的 INSERT 操作流。之后就可以使用终端调出
wrangler d1 execute,抑或是 D1 扩展 API 进行接引。正常拿一个包含 500MB 全局负荷的数据库来说,只要等上 15 到 30 分钟。
我们实际帮助了两家初创团队成功从 Supabase 脱逃至 D1。这其中的端到端平均时长仅消耗了 4 天并彻底囊括了测试验证。这两家团队更是在切档运转后的第一周便反馈查询延迟分别直降了 68-74%。
从任何数据源牵引至 Supabase
依托 PostgreSQL 作为稳健底座让 Supabase 本身就在对付迁移场景时畅通无阻,它甚至将难度打乱至极趋近于零成本转换。若你此刻恰好置身于 Heroku Postgres、Railway、Neon 亦或是任意一个原生 PostgreSQL 产品之间徘徊的话,这里的典型操作只会包含四步:
- 建立 Supabase 工程
- 把应用指向那段下发的新建连接字符串
- 把迁移流程直接执行掉(纯 PostgreSQL 内部运作,毫无适配压力可言)
- 全面测试
这也算是 Supabase 的拿手绝活之一:只要是以 PostgreSQL 铺底的应用,所谓的迁移根本算不得是什么障碍。
D1 与 Supabase 的抉择之道:决策框架
你可以通过这棵决策树来梳理思路:
Is your application primarily read-heavy (>70% reads)?
├── YES → Does it serve users globally?
│ ├── YES → Cloudflare D1 ← Best performance/cost
│ └── NO → Both options work well
└── NO → Does it need real-time subscriptions?
├── YES → Supabase ← D1 can't match this
└── NO → Does it use complex PostgreSQL features?
├── YES → Supabase
└── NO → Both work, D1 is cheaper
具体到 TanStack Ship 的场景中,D1 能成为这套架构的底层范式仅仅是因为:
- TanStack Query 早已从根本上包办了响应式的数据获取问题——所以实时的状态派发能完全抛给展示层去做裁决
- FTS5 完全可以覆盖绝大多数常规所需的检索负载,不再需要外部资源干预
- Better Auth 和 Cloudflare 身份认证架构无缝接入
- R2 + D1 + Workers 构建起了一个异常紧密且在成本收缩上堪称恐怖的边缘全能组合
TanStack Ship 的 D1 优先路线:为何我们做出这个选择
TanStack Ship 在交付时预装配置了 Cloudflare D1 作为核心基底数据库。此举绝对不仅是一个为了省事的拍脑袋设定——这是深思熟虑且历经严格生产试验后的结果。
我们的底层逻辑包括:
-
TanStack Ship 对准的是 SaaS 创始人:在我们接触的各种样本里,绝大部分客群都是第一次投入创业的个人,对推向市场的敏捷速度以及不浪费开发资金方面简直如饥似渴。正因如此,当一支团队里连一个专门全天候待命的后端专家都找不出时,D1 那几乎形同虚设的操作开销便彻底变成了一个难以割舍的光环。
-
性能的复利回报:利用 TanStack Ship 作为模版搭建的任何一个视图都将无限吞服由 D1 所产生的边缘架构红利。这不再是一个藏在你后台界面的设置开关了——这是最为直白的底层默认体验。
-
早期用户的痛点在于效率即是全部的命脉:在资金的起步积累阶段里跑马圈地无疑是件充满变数且惊心动魄的事情。D1 这种靠精准计量而发包的商业计费手段正好能无情粉碎所谓包月或容量等带来的虚耗预判。在一个坐拥 500 名月度活跃用户的 TanStack Ship 服务里,它可能只需要让你向 D1 交出每月 $2-5 的租金就能维系得活灵活现。
-
Cloudflare 展现出了一种恐怖且严谨的内部结阵生态:Workers + D1 + R2 + KV + Durable Objects = 完整齐备的服务器资源平台加上高强度统筹调配系统、一目了然且清清楚楚的账单明细,当然还有根本不涉及所谓三方供应商接入之痛的零阻力快感。
我们不是在强加给这片文章关于 Supabase 原罪到底是什么的想法——特定技术场景里的确非它莫属。但针对于 TanStack Ship 所覆盖的核心客群,甚至是当下时局中所涌现的那些海量化现代版 SaaS 应用,选 D1 真是一件水到渠成的上佳之选。
常见问题总结:SaaS 环境下的 Cloudflare D1 vs Supabase
Cloudflare D1 在 2026 年真的可以应对生产级环境考验吗?
当然可以。D1 在 2022 年被搬上舞台,并且在当下已经完成了极大概率的实战级自我进化。大规模级别的架构布设屡见不鲜,另外 Cloudflare 所立下的 99.99% 在线可用性保证(付费计划可用)足以安抚最挑剔的企业级风尚。如今的 TanStack Ship 早已经将 D1 打造成面对旗下各个托管平台时的生产级防波堤了。
我能不能强行拼接,把 D1 和 Supabase 一并吞下?
这反而是教科书式用例。很多极客架构选择用 D1 来为那群只相信低延迟体验的前端浏览客提供读取保障,而后又反手利用 Supabase 打理那些高度依赖分析,或者只吃 PostgreSQL 高级查询特性的管理仪表盘接口。这俩并不是你死我亡的水火之势,更像是在弥补双方弱环的完美互补手段。
敢问 D1 这一端是如何处理源自 PostgreSQL 内卷而来的代码移植呢?
D1 所依靠的只是最标准的 SQLite 语法环境搭建。针对一切建立在 PostgreSQL 专属环境下的遗迹都需要实施改造重置——可以说大多数包含 CREATE EXTENSION 命令集、COPY FROM 的直接套用、或者是越位级的高端配置 CTEs 技巧及特定储存操作,都必然要推到重塑。其实面对一些质朴单纯 CRUD 构建下的工具系而言这种变动都是极其简单的。但对于极为错乱的深层数据处理链而言,乖乖排个 1 至 2 周的时间进度。
针对那些狂飙 AI/ML 的特殊领域这俩兄弟表现怎样呢?
Supabase 只用了一款插件名为 pgvector 就能够干净利落地拿下了在向量提取检索及深入数据存储上那份不可一世的骄傲。而 D1 时至今日依然在这个核心模块里保持沉默。要是你的那些心仪 SaaS 方案对诸如以语境剖析定位语义环境内容,强烈的 AI 加成体验偏好逻辑或者是跟 LLM 服务搭肩并立有着病态偏执的话,那么对不起,毫无疑问,去紧紧锁死 Supabase 结合 pgvector 所带来的技术整合路线是你绝不会走偏的必然答案。
数据库层的数据倒换备份对 D1 这一端是如何规划的?
无论你是什么会员阶层,D1 在任何维度下都内裹了可以为你托底 30 天超长快照追溯版本的保命工具。你可以随便使唤一句 wrangler d1 restore,你的 D1 就能在过去 30 天里像使用时光机般随叫随到任何一端镜像坐标。而从这点比较起,加入了 Pro 等级的精英层 Supabase 玩家却享有自动续档和时刻记录快照能力去挽留任何细微生物级时间切片的强援体验。不过总的看下来,无论是这哪一条技术走线对于当前阶段的实地应用都毫无大碍。
到底这两个谁在抱团切入 TanStack Query 时会显露真正的默契度?
说真的其实都可以做到十分完美契合的地步。虽然凭借不可一世的下放加速环境令 D1 在利用 TanStack Query 对接网络并提供回暖处理极速加成上有了一丝的压制味道。但平心而论两方的底层操作命令依旧是对位的同宗一脉。这也再次证实了一点那即是,TanStack Query 本身完全不理睬或者说是压根不在意你究竟从什么后端抓取的资源——因为就算你后方是废墟他也能面不改色的自动做完底层缓存在内存驻留处理机制或是自动抓起下一次刷新更替还有所谓极其具有前瞻预感的乐观更新技术。
结论:做出契合你 SaaS 画像的数据库抉择
Cloudflare D1 与 Supabase 的对决,从来都不是在质问究竟谁“更好”——而是谁能够完美嵌入你当下的 SaaS 应用形态、团队结构以及核心的增长曲线阶段中去。
在这些场景下,果断采用 Cloudflare D1:
- 你的架构明显处于沉重的超高通量读取形态包裹之中
- 期望应用将无国界地席卷各个大陆的用户板块
- 当系统步入无止境裂变状态时也能以极低的成本负担运行
- 本身就是那套以使用甚至是推崇使用 Cloudflare Workers 为前提的设计偏好者
- 全文检索能够解决当前的诸多核心诉求点;向量检索目前根本排不上号
出现以下这些拐点,转而奔赴 Supabase 阵营:
- 对全套协同工具实时传输状态的严格刚需
- 整套团队本身在原生 PostgreSQL 方面所累积的研发资产储备极高
- 团队本身正在脱离原生 Firebase 或是其他的某些后端即服务(BaaS)架构底层约束所导致的流亡
- 在项目行军全景图表里已经规划过了未来与向量搜索及一系列 AI 狂热需求对冲的战略线标
- 只是需要一个彻头彻尾包含有顶流服务链及被全面托管照看的完全形态数据库生态范本
将这几点结合在一起也不难发现为何 TanStack Ship 出库时自带预配置的 D1 技术端倪:原因在于其无条件锁定着这些我们所钟爱用户的完美贴合预期,也就是这些希望自己的 SaaS 作品永远响应疾速,始终处在极客般的无拘束且被拉至成本尽头极限底线之中的初创玩家们。倘若你们在这段航程中因为种种难以调和的原因出现需求极度背驰的情况,那么 Supabase 说绝对就是完美收下一棒的最佳防守底座——何况拥有如 TanStack Ship 这类超然架构本就不代表你们的人生将遭遇某种偏执且病态式的锁定机制。
你想见识一下搭载 D1 引擎为核心所构筑出的 SaaS 终极理想形态是什么样么? 探索 TanStack Ship 的预配置 D1 架构 或 阅读我们的 D1 性能跑分指南。
本文由 Huifer 撰写。我们在 2024 年第四季度对 D1 和 Supabase 在处理 TanStack Ship 时的架构适配做了充分探究,并在六周的深层次全维生产压力测验后笃定且唯一地认准了前者。这个抉择是凭借这只在完全平等维度下降低了 74% 延时水平且收缩了 80% 开销的怪兽表现促成的。自此之后,我还亲自下场帮助了另外两家创业团队圆满了这条换血升维路线。最后更新:2026年9月。
参考来源:Cloudflare D1 Documentation,Supabase Documentation,SQLite Documentation,PostgreSQL Documentation,TanStack Ship Docs,Cloudflare Workers,Supabase Pricing 2026,D1 Pricing,pgvector,SQLite FTS5,TanStack Query
<!-- wp:heading {"level":2} -->更新日志
| 日期 | 变更说明 | 作者 |
|---|---|---|
| 2026-09-09 | 首次发布 | Huifer |
| 2026-09-09 | 基于部署实例,补入真实世界的架构迁移案例 | Huifer |