Skip to content
返回部署

使用 Neon 部署

Serverless Postgres,分支、缩到零和冷启动优化。

平台进阶

为什么

Neon 分离计算和存储,空闲缩到零(免费层)和即时分支预览。线兼容 Postgres,任何 Postgres 客户端可用。

平台即服务采用率 2024 年增长 24%,团队从虚拟机管理转向 git push 部署。the cloud infrastructure market reached $330B in 2024, growing 22% year-over-year (Synergy Research),PaaS 层捕获了大多数新工作负载。

何时使用

需分支的 serverless Postgres 用 Neon,尤其 Vercel/Cloudflare 应用。高吞吐常驻工作负载避免(用 Supabase/RDS)。

如何做

1. 创建 — console.neon.tech → 新建项目 2. 分支 — neon branches create preview(即时副本) 3. 连接 — 连接字符串,psql 或任何 Postgres 客户端 4. 扩缩 — 空闲自动挂起,查询恢复 5. 迁移 — 用 psql 或 drizzle/prisma migrate 6. 池 — 5432 端口连接池端点 7. SDK — @neondatabase/serverless 用于边缘

示例

import { neon } from "@neondatabase/serverless"; const sql = neon(process.env.DATABASE_URL!); const users = await sql`SELECT * FROM users WHERE id = ${1}`; # 预览分支 neon branches create preview --parent main # 获取分支连接字符串 neon connection-string preview # Drizzle 配置 // drizzle.config.ts export default { schema: "./schema.ts", driver: "pg", dbCredentials: { connectionString: process.env.DATABASE_URL! }, };

常见问题

  • ⚠冷启动 300ms-2s — 空闲后首查询唤醒计算,用连接池
  • ⚠分支未清理 — 预览分支累积,设清理 cron
  • ⚠环境间配置漂移 — 使用基础设施即代码(Terraform/Pulumi)保持 dev/staging/prod 一致

最佳实践

  • ✓边缘用 @neondatabase/serverless SDK — 基于 HTTP,无 TCP 连接开销
  • ✓预览用分支 — 每 PR 即时 DB 副本,合并自动清理
  • ✓设置健康检查和优雅关闭 — 处理 SIGTERM 以在退出前排空进行中的请求

常见问题解答