cloud db

Edit

컨테이너가 0으로 줄었다가 요청마다 다시 뜨는 환경(Cloud Run, Lambda, 무료 PaaS)에서는 DB 선택 기준이 달라진다. 커넥션 풀을 유지할 수 없다는 게 핵심 제약이라, 요청 단위 HTTP로 붙는 DB가 유리하다.

무료 티어 비교

Turso Neon Supabase InstantDB DoltHub Back4app BaaS
정체 관리형 SQLite(libSQL) 서버리스 Postgres Postgres + PostgREST + Auth 실시간 동기화 DB Git처럼 버전 관리되는 MySQL 호환 DB Parse + MongoDB
접속 HTTPS 요청 단위 TCP (pooler 경유) TCP + REST 클라이언트 SDK + Admin HTTP API HTTP REST API REST / GraphQL만
무료 한도 DB 100개 / 5GB / 월 5억 row read, 1천만 write 0.5GB / 월 100 CU-h / 프로젝트 100개 500MB / egress 5GB / MAU 5만 / 활성 프로젝트 2개 1GB / API 요청 무제한 공개 저장소 무료, 비공개는 100MB까지 월 25,000 요청 / 250MB / 파일 1GB
유휴 시 영향 없음 5분 후 scale-to-zero, 재개 시 지연 7일 유휴 시 프로젝트 정지 정지 없음 영향 없음 -
카드 불필요 불필요 불필요 불필요 불필요 불필요
Go 궁합 libsql-client-go — 순수 Go, CGO 불필요 pgx pgx 공식 SDK 없음 (JS/Python만) HTTP 직접 호출 Go SDK 없음

선택 가이드

Turso (libSQL)

SQLite를 서버로 올린 libSQL의 관리형 서비스. 이 노트의 til.benelog.net 구성에서 실제로 쓴 저장소다.

실무 주의사항:

Neon

Supabase

InstantDB

Dolt / DoltHub

PaaS 내장 DB

앱을 올린 곳에서 DB까지 같이 주는 경우. 앱과 같은 리전에 있어 지연이 짧다는 게 공통 장점이다.

Back4app BaaS (Parse)