728x90
반응형
Vercel은 웹사이트와 웹 애플리케이션을 위한 클라우드 호스팅 플랫폼입니다. 주로 프론트엔드 개발자들이 사용하며, 정적 사이트(Static Sites)와 서버리스(Serverless) 함수를 배포하는 데 적합합니다. Vercel은 특히 Jamstack 아키텍처와 리액트(React), 앵귤러(Angular), 뷰(Vue) 같은 현대적인 웹 프레임워크와 잘 어울립니다.
Vercel의 주요 특징은 다음과 같습니다:
- 간편한 배포: Git 리포지토리와 연동하여, 코드를 푸시(push)하는 것만으로도 자동으로 웹사이트나 애플리케이션을 배포할 수 있습니다.
- 빠른 성능: 전 세계에 분산된 CDN(Content Delivery Network)을 통해 콘텐츠를 빠르게 제공합니다.
- 서버리스 함수: 백엔드 로직을 위한 서버리스 함수를 쉽게 배포하고 실행할 수 있습니다. 이를 통해 백엔드 서버 없이도 다양한 백엔드 기능을 구현할 수 있습니다.
- 사용자 친화적인 인터페이스: 사용하기 쉬운 대시보드와 명령줄 도구를 제공하여, 개발 및 배포 프로세스를 간소화합니다.
- 프리뷰 및 테스트: 코드 변경 사항을 실시간으로 미리 볼 수 있는 프리뷰 링크를 제공합니다. 이를 통해 배포 전에 변경사항을 검토하고 테스트할 수 있습니다.
Vercel은 주로 정적 사이트 생성기나 리액트와 같은 모던 웹 프레임워크를 사용하는 프론트엔드 개발자들에게 인기가 많습니다. 또한, 소규모 프로젝트에서 대규모 엔터프라이즈 애플리케이션에 이르기까지 다양한 규모의 프로젝트에 사용됩니다.
우리가 백엔드를 Vercel에서 Fly.io로 바꾼 이유
- API 서버는 Hono, 런타임은 Bun, 호스팅은 Fly.io로 전환
이전한 이유
- 경량 서버 필요: 모니터링 엔드포인트를 위해 간단한 REST API를 갖춘 경량 서버를 원했음. Vercel의 Next.js 서버는 불필요한 추가 기능이 있고 더 무거움. Hono와 Bun을 사용. 시작하는데 0.19ms & 메모리 91MB
- 가격 문제: 다중 지역 모니터링을 유지하면서 비용을 예측하기 어려웠음. Vercel은 사용한 CPU 시간에만 비용을 부과하지만, 사용자 증가에 따라 비용이 증가함. 반면 Fly.io는 더 저렴
이전 중 도전과제
- Docker와 모노레포: 초기에 Docker 이미지가 2GB로 과도했지만, 최적화를 통해 700MB로 줄임
- Fly 배포 시간 초과 문제: Fly 배포는 종종 시간 초과 되어서 타임아웃을 늘려야 했음. Fly 배포는 Vercel에 비해 안정성이 떨어지고, 이전 버전으로 빠르게 롤백하는 방법이 없음
- Bun 버그: Bun 런타임 사용 시 요청 실패가 증가했으며, keepalive 매개변수를 false로 설정해야 함
결론
- 이전은 도전적이었지만, 결과적으로 만족스러웠음.
- 물론 Vercel은 여전히 좋아함. 그러나 Next.js 이외의 애플리케이션 호스팅이 필요한 경우 이것은 최적의 선택이 아닐 수 있음
https://www.openstatus.dev/blog/migration-backend-from-vercel-to-fly
728x90
'01.Digital Service' 카테고리의 다른 글
클라우드 컴퓨팅 - CaaS(Computing as a Service) (0) | 2023.11.30 |
---|---|
4차 산업혁명 - 빅 블러(Big Blur) (0) | 2023.11.30 |
클라우드 컴퓨팅 - 호스팅 플랫폼 - Fly.io (0) | 2023.11.29 |
4차 산업혁명 - 스마트 교통 - C-ITS (협력 지능형 교통체계) (0) | 2023.11.28 |
4차 산업혁명 - 스마트 교통 - ITS(Intelligent Transportation System) (0) | 2023.11.28 |