Neon Serverless 技能用于在无服务器和边缘计算环境中配置 Neon Serverless Driver,以获得更优性能。
用途 适用于为边缘函数(Vercel Edge、Cloudflare Workers)建立连接、配置无服务器 API(AWS Lambda、Google Cloud Functions)、优化低延迟数据库访问,以及为高吞吐应用实现连接池。
不推荐用于:复杂的多语句事务(应使用 WebSocket Pool)、常驻服务器(应使用原生 PostgreSQL 驱动)或离线优先应用。
主要能力
- 安装与兼容性要求说明
- HTTP 与 WebSocket 适配器选择指导
- 连接池策略
- 查询优化模式
- 错误处理与故障排查
- 代码生成规则:生成 TypeScript/JavaScript 代码时,在生成 import 语句前检查 tsconfig.json 中的路径别名(compilerOptions.paths);若存在路径别名(如 "@/": ["./src/"]),则使用别名(如 import { x } from '@/lib/utils');若不存在或不确定,始终使用相对导入(如 import { x } from '../../../lib/utils');验证导入与项目配置一致;默认使用相对导入,因为无论配置如何它们都能工作。
使用方式 安装:
npm install @neondatabase/serverless
连接模式一:HTTP 客户端(推荐用于边缘/无服务器):
import { neon } from '@neondatabase/serverless';
const sql = neon(process.env.DATABASE_URL!);
const rows = await sqlSELECT * FROM users WHERE id = ${userId};
连接模式二:WebSocket Pool(用于 Node.js 长连接):
import { Pool } from '@neondatabase/serverless'; const pool = new Pool({ connectionString: process.env.DATABASE_URL! }); const result = await pool.query('SELECT * FROM users WHERE id = $1', [userId]);
模板示例:
- templates/http-connection.ts - HTTP 客户端设置
- templates/websocket-pool.ts - WebSocket 连接池配置
验证: 使用 scripts/validate-connection.ts 在部署前测试数据库连接。
参考文档 主要资源:项目根目录下的 neon-serverless.mdc(https://raw.githubusercontent.com/neondatabase-labs/ai-rules/main/neon-serverless.mdc),包含安装与兼容性要求、HTTP 与 WebSocket 适配器选择、连接池策略、查询优化模式、错误处理与故障排查等综合指南。
相关技能
- neon-auth - 添加身份验证
- neon-js - 包含身份验证与数据 API 的完整 SDK
- neon-drizzle - 用于无服务器连接的 ORM
- neon-toolkit - 用于临时数据库测试
若想在项目中获得最佳实践,可运行 neon-plugin:add-neon-docs 并设置参数 SKILL_NAME="neon-serverless" 以添加参考链接。
限制 资料未提供具体收费、价格、平台支持范围、性能指标或效果数据;复杂多语句事务、常驻服务器和离线优先应用不适用本技能。