~/VibeHandbook
$39

챕터 09 · 02

매니지드 vs 셀프 호스팅

데이터베이스를 직접 서버에서 운영할 수도 있고, 공급자가 백업·패치·가동시간을 책임지는 매니지드 서비스(Supabase, Neon, PlanetScale, RDS, Cloudflare D1)를 빌릴 수도 있다.

바이브 코딩에서는 항상 매니지드로 시작하라. 데이터베이스를 셀프 호스팅한다는 것은 이제 백업, 보안 업데이트, 디스크 공간, 그리고 새벽 3시의 복구를 당신이 책임진다는 뜻이다. 그것은 빌드에서 주의를 빼앗는 진짜 운영 업무다. 매니지드 서비스는 약간의 비용이 들지만 엄청난 시간과 위험을 줄여준다. 셀프 호스팅으로 졸업하는 것은 구체적인 이유와 그것을 뒷받침할 기술이 있을 때만 하라.

매니지드 공급자를 고를 때는 실제로 무엇에 돈을 내는지 아는 게 좋다. 마케팅 페이지는 다 비슷해 보이기 때문이다. 진짜로 다른 점 몇 가지가 있다:

  • 연결 모델. 서버리스 플랫폼(Cloudflare Workers, Vercel functions)은 데이터베이스 연결을 끊임없이 열고 닫는데, 이는 고전적 Postgres 연결 풀을 고갈시킬 수 있다. Neon이나 Supabase 같은 공급자는 바로 이를 위해 연결 풀러(PgBouncer 또는 동등물)를 제공한다 — 서버리스 코드에서는 풀링된 연결 문자열을 써라.
  • 브랜칭과 백업. Neon과 PlanetScale은 Git처럼 데이터베이스를 "브랜치"할 수 있게 해, 마이그레이션을 사본에서 테스트할 수 있다. 시점 복구(point-in-time recovery)가 켜져 있는지 확인하고, 얼마나 과거까지 거슬러 가는지 알아두라.
  • 종속(lock-in). D1과 DynamoDB는 훌륭하지만 하나의 클라우드에 당신을 묶는다. 일반 Postgres(Supabase, Neon, RDS)는 이식성이 있다 — 당신의 스키마와 쿼리는 어떤 Postgres 호스트로도 옮겨간다. 대부분의 초보자에게는 이식 가능한 쪽이 장기적으로 더 안전한 선택이다.

오프라인으로 보고 싶으세요?

PDF + EPUB + 다운로드형 프롬프트 라이브러리 + 버전 업데이트를 받으세요.

$ PDF 받기 — $39