Drizzle는 neon-http와 neon-websockets 드라이버를 통해 Neon 연결을 기본적으로 지원합니다. 이 드라이버들은 내부적으로 neon-serverless 드라이버를 사용합니다.
neon-http와 neon-websockets 드라이버를 사용하면 서버리스 환경에서 TCP 대신 HTTP 또는 WebSockets를 통해 Neon 데이터베이스에 접근할 수 있습니다.
단일 비대화형 트랜잭션의 경우 HTTP를 통한 쿼리가 더 빠릅니다.
세션이나 대화형 트랜잭션 지원이 필요하거나, pg 드라이버와 완벽히 호환되는 대체재가 필요하다면 WebSocket 기반의 neon-serverless 드라이버를 사용할 수 있습니다. Postgres를 통해 Neon 데이터베이스에 직접 연결할 수도 있습니다.
Cloudflare Worker에서 Neon Serverless 드라이버와 Drizzle ORM을 사용하는 예제는 **여기**를 참고하세요.
서버 환경에서 Neon을 사용하려면 Neon의 **공식 Node.js 문서**에 설명된 PostgresJS 드라이버를 사용할 수 있습니다. 자세한 내용은 **문서**를 확인하세요.
1단계 - 패키지 설치
npm
yarn
pnpm
bun
위 명령어를 사용하여 필요한 패키지를 설치합니다. drizzle-orm과 @neondatabase/serverless는 프로젝트에 필수적인 패키지이며, drizzle-kit는 개발 환경에서만 사용하는 개발 의존성 패키지입니다.
2단계 - 드라이버 초기화 및 쿼리 실행
Neon HTTP
Neon Websockets
node-postgres
postgres.js
IMPORTANT
Node.js와 같이 WebSocket 전역 변수가 정의되지 않은 환경에서 WebSockets를 사용하려면 추가 설정이 필요합니다.
ws와 bufferutil 패키지를 프로젝트 의존성에 추가하고, Drizzle 설정에서 ws를 지정하세요.
기존 드라이버를 제공해야 하는 경우:
Neon HTTP
Neon Websockets
node-postgres
postgres.js
IMPORTANT
Node.js와 같이 WebSocket 전역 변수가 정의되지 않은 환경에서 WebSockets를 사용하려면 추가 설정이 필요합니다.
ws와 bufferutil 패키지를 프로젝트 의존성에 추가하고, Drizzle 설정에서 ws를 지정하세요.