요즘 사이드 프로젝트를 진행하고 있다.
일도 바쁘고 시간이 지날수록 자꾸 늘어져서... 개발 속도가 점점 늦어지고 있다.
리프레쉬 겸 상용 서버에서 사용할 인프라좀 찾아보고 있다.
사이드 프로젝트에서 배포를 고려할 때 가장 큰 문제는 역시 비용이다.
나 역시 비용을 고려하며 쓸만한 서비스가 있나 찾아보았다.
오늘은 내가 찾아본 정보들을 정리해보려 한다.
최대한 간단하게 적을 것이므로 대략 이런 서비스가 있구나 하고 훑어보면 좋을 것 같다.
어차피 프리티어 혹은 바로 윗 단계의 비용을 지불할 가능성이 높다고 생각하기에 비용 정책은 따로 설명하지 않겠다.
Firebase, Vercel과 같이 널리 알려진 서비스는 제외하고 서술한다.
Server
Supabase
Supabase | The Open Source Firebase Alternative
Build production-grade applications with a Postgres database, Authentication, instant APIs, Realtime, Functions, Storage and Vector embeddings. Start for free.
supabase.com

supabase는 Firebase와 굉장히 유사한 서비스다.
Firebase와 대비되는 가장 큰 특징을 뽑자면 두 가지가 있다.
- RDB(PostgreSQL) 사용
- 오픈소스
이 외의 특징이라면 인증, 보안, 스케일링 등 여러 기능을 지원한다.
이 글을 읽고 있는 분들이라면 프리티어를 사용할 가능성이 90% 이상이라고 생각하기에 비용 정책은 따로 설명하지 않았다.
firebase와 supabase 둘 중에 무엇을 사용할지는 요구사항에 따라 달라지지만,
본인이 NoSQL, RDB 중에서 하나만 사용하고 RDB를 사용한다면 Firebase 대신 고려해볼만한 백엔드 서비스라고 할 수 있다.
단, 코드 작성을 딱히 안해도 서버를 구축할 수 있기 때문에 백엔드 개발자에겐 개인 프로젝트용으로 추천하지 않는다.
DB
PlanetScale
PlanetScale: The world’s most advanced database platform
PlanetScale is the most advanced MySQL platform.
planetscale.com

Mysql 8.0 기반으로 작동하는 서버리스 DB 서비스이다.
git의 브랜치 개념처럼, 디비도 브랜치 기반으로 나눌 수 있어서 실서버, 테스트서버를 간편하게 관리할 수 있다.
(당연히 merge도 가능하다!)
vitess 기반으로 만들어져 Horizontal Scailing도 가능하다.
대신 외래키를 지원하지 않는데, 이 부분은 node.js를 사용한다면 prisma로 인덱스를 fk처럼 사용할 수 있게 만들어준다.
(그래서 prisma와 궁합이 굉장히 좋다고 생각한다.)
firebase나 supabase를 사용하여 DB만 사용할 수도 있겠지만, 용량이 작다.
그런데 planetscale은 무려 5GB가 기본이다!
Upstash
Upstash: Serverless Data for Redis® and Kafka®
Designed for the serverless with per-request pricing and Redis®/Kafka® API.
upstash.com

이걸 DB라고 소개하는건 아니라고 생각하긴하는데... 딱히 분류하기 애매해서 그냥 넣었다.
redis, kafka 를 사용해보고 싶다면 upstash로 간편하게 사용해보는것도 좋을 것 같다.
비용도 일정 트래픽 이하는 무료이기도 하고, 개인프로젝트용으로 이용하기엔 문제 없는 수준이다.
Deploy
fly.io
Deploy app servers close to your users · Fly
No Poster Board Necessary Globally Distributed Databases Without the Science Project Fly Anycast HTTP lets apps control routing, enabling single-writer multi-reader clusters for super-fast reads. Fast nVME Storage Create Fly Volumes from 1 to 500 gigabytes
fly.io
배포 자동화가 필요하다면 Vercel 외에 fly.io도 고려해볼만 하다.
Docker를 이용하기 때문에 어느정도 배경지식이 있다면 Vercel보다 편하게 이용할 수 있다.
사실 편한거 안쓰고 본인이 직접 배포하고 관리할거라면 오라클 클라우드를 쓰면 된다.
인스턴스부터 DB까지 다 프리티어니까....
하지만 난 가입이 안되더라 ㅠ
라즈베리파이도 대안이 될 수 있겠지만 집에 설치했다가 정전나면 서버 내려감..
뭘 쓰든 돈이 없으면 서럽다 ㅠㅠ
'프로그래밍 > 기타' 카테고리의 다른 글
[딥러닝] 퍼셉트론과 신경망 (0) | 2024.03.15 |
---|---|
깃허브 블로그에 댓글 기능 추가하기 (feat. Utterances, Disqus) (+ react, vue) (2) | 2022.02.08 |
차근차근 해보는 Docker 개발환경 세팅 방법 (0) | 2022.02.04 |
[Vue.js] click 이벤트 submit 새로고침 방지 (0) | 2022.01.27 |
Vue 2에서 vue-cli 대신 Vite 사용하기 (0) | 2022.01.16 |