← 返回文章列表

Nuxt 4 + Cloudflare + Supabase 实战

一套从本地开发到上线的完整组合:Nuxt 4 做站点,Drizzle 连 Supabase Postgres,最后部署到 Cloudflare Workers。

这套技术组合的核心只有一个问题:Cloudflare Workers 怎么连 Postgres。 Workers 运行在 V8 isolate 里,没有长期存在的服务器进程,也没有原生的 TCP 连接池。所以不能像传统 Node 应用那样随便开一个 pg 连接池。好在 Cloudflare 提供了 outbound TCP socket(cloudflare:sockets),postgres.js 已经内置了这套适配——当打包器按 workerd 条件解析依赖时,会自动换成 Workers 版本的驱动。 数据库这边,Supabase 的 Transaction pooler 跑在 6543 端口,本质上是一个 PgBouncer。它不支持 prepared statements,所以 Drizzle 初始化时必须传 prepare: false。这两点搞对,剩下的就是普通的增删改查。 连接池大小建议控制在 5 以内。每个 Worker isolate 都会建立自己的连接,Supabase 免费版的总连接数并不宽裕,宁少勿多。

星星云科技

为成长型企业提供产品设计、研发与上线的全流程服务。

导航

技术栈

  • Nuxt 4 + Tailwind CSS
  • Supabase Postgres + Drizzle ORM
  • Cloudflare Workers 部署
© 2026 星云科技 · 本站为示例项目