-
[#s-day] 프론트엔드 공부 주저리(vercel , Netlify etc)개발일지/FE 2022. 11. 1. 16:37반응형
오늘은 이전 포스팅하던 것과 별도로 다른 이야기를 하기 위해 블로그를 작성하기 시작했다.
바로 Vercel과 Netlify 의 차이점에 대한 부분이다.
먼저 Vercel과 Netlify는 프론트엔드와 백엔드를 따로 두지 않고 프론트엔드에서 플랫폼으로 배포할 수 있도록 해준다. 추가적으로 github pages를 통한 배포 역시 서버리스 배포를 의미한다.
(프론트엔드와 백엔드를 함께 제공하는 wix와 같은 사이트도 존재한다.)❓ 어라, 그렇다면 두 플랫폼 서비스 회사의 경우 정말 서버 없이 구동이 되는 것인가?
이것저것 찾아본 바로는 서버가 없다는 의미에서가 아닌, 서버를 생각할 필요가 없다는 뜻에서 서버리스 배포라는 단어가 사용된다는 것이었다. (물론 이것도 참고해서의 결론이지 정확한 내용은 아니다.😥)
클라우딩 컴퓨팅은 구름과 같은 무형의 형태로 서로 다른 물리적 위치에 존재하는 컴퓨팅 자원을 가상화 기술로 통합하여 제공하는 것으로 하드웨어적인 부분과 운영체제와 관련된 부분을 이전처럼 일일이 배포를 위해 신경 쓰지 않아도 되고 비용이 절감되는 효과를 불러온다. 즉 AWS나 Azure 같은 서비스를 의미한다.
이때 클라우드 서비스 모델을 살펴볼 필요성을 느끼는데, 바로 IaaS, PaaS, 그리고 SaaS로 나뉘어진다는 것이다.
(굉장히 간단하게 찍먹 수준으로 설명할 예정이다.. 내가 보고 정리하고 있지만 나에게는 너무나 생소한 개념..😥X2)
1️⃣ SaaS란?
먼저 SaaS는 Software as a Service라는 영어의 축약이며, 서비스형 소프트웨어라는 의미이다. 대표적으로 ICloud, Google Drive 그리고 네이버 Box를 예시로 들 수 있다. 이때, 이점은 SaaS의 어플리케이션을 제공해주기 위해 별도의 다른 하드웨어적 설치 구현 등 관리할 필요 없이 인터넷 연결만 있다면 배포 가능하다는 장점이 있다.
💛 여기서 체크하고 넘어가야할 부분은 SaaS는 IaaS와 PaaS 기반으로 구축되고 있다는 점이다.
2️⃣ PaaS란?
PaaS는 Platform as a Service이며, 서비스형 플랫폼을 의미한다. 이는 서비스형 플랫폼을 의미하며 AWS Elastic Beanstalk, Windows Azure와 같은 서비스를 구축할 수 있는 플랫폼을 제공한다. 여기서는 IaaS와 마찬가지로 모든 물리적 및 가상 핵심 인프라를 제공하고 호스팅 하게 되는데 미들웨어, 데이터베이스 관리 시스템, 개발 툴, 비즈니스 인텔리전스 및 분석 툴 등등을 제공하고 관리한다.
3️⃣ IaaS란?
IaaS는 Infrastructure as a Service 즉 서비스형 인프라로, 비지니스 운영에 필요한 스토리지, 네트워킹 및 컴퓨터 리소스를 제공한다. 즉 이곳에는 AWS Rackspace와 같은 예시를 들 수 있다.
이 세개를 놓고 보면 도대체 클라우드 서비스 모델의 차이점이 무엇이지 궁금할 것이다.
다음 참고 자료 중 중간을 확인하면 그림 한 가지를 발견할 수 있게 된다.
🔽피자에 빗대어 설명한 그림이 있는데 그곳을 살펴보며, 정리하겠다.
IaaS, PaaS, and SaaS: 클라우드 서비스 모델 개요 | Freshdesk
클라우드를 이해하면 보다 전략적으로 투자하고 비즈니스 경쟁력을 유지할 수 있습니다. SaaS를 사용하여 IT 비용을 절감하고 ‘비즈니스 혁신’에 집중하세요.
freshdesk.com
먼저 SaaS는 외식을 의미한다. 즉 사용자가 아무것도 하지 않아도 누군가가 이미 다 만들어 둔 것을 제공받는다는 의미이다. 그렇다면 PaaS는 피자 배달을 의미한다고 볼 수 있다. 즉 집에서 피자를 주문한 뒤 식탁에 숟가락을 올리고 탄산을 준비하는 것은 이용하고자 하는 사람이 준비를 해야 한다는 의미이다. 그렇다면 IaaS는 무엇일까? 바로 냉동 비조리 피자를 의미한다고 볼 수 있다. 피자를 오븐 혹은 전자레인지에 돌려서 식탁에 올린 뒤 탄산과 함께 먹는 것은 피자를 먹고자 하는 사람이 해야 할 일이 된다.
여기서만 보면, 우리가 알고 있는 vercel과 netlify는 PaaS라고 생각할 수 있다.
💥잠깐, 그런데 놀랍게도 Vercel과 Netlify는 PaaS가 아니다.
Vercel과 Netlify는 FaaS인데 이는 Function as a Service라는 의미이다.
PaaS를 우리는 배달 주문으로 비교했다면 FaaS는 하단 참고자료에서 확인 가능할 테지만 피자 매장에서 피자를 먹는 것으로 꼽을 수 있다. 그렇다면 외식이랑 무엇이 다른가를 묻는다면 친구의 여부로 예를 들 수 있을 것 같다.
그러니까 SaaS의 경우 친구까지 이미 내가 부르지 않아도 매장에 와 있고 나(사용자)는 그저 그곳에서 즐기기만 하면 된다. 그러나 FaaS는 내(사용자)가 직접 친구들과 매장에 가서 피자를 사 먹는 것을 의미한다. FaaS와 비슷한 PaaS는 친구를 집에 부르고 피자를 배달시켜 집에서 준비해 먹는 것으로 예를 들 수 있을 것 같다.
이 개념으로 개발로 돌아오면 PaaS는 애플리케이션 개발에 집중할 수 있도록 인프라와 런타임을 제공한다면, FaaS는 실행할 함수 코드에만 집중할 수 있도록 나머지를 제공해준다는 의미이다.
이제 다시 본론으로 돌아와 가장 중요한 차이점이 무엇인지에 대해 알아볼 수 있도록 하자.
크게 따지자면 역시 비용 부분이 아닐 수 없다. 두 플랫폼의 무료 비용은 각 공식 홈페이지에서 확인할 수 있으며, 본인의 프로젝트 크기 및 스펙이 따라 결정하는 것이 좋을 것 같다는 생각이 들었다.
결과적으로, 두 플랫폼은 가격 차이 이외의 FaaS 방식이라는 것은 동일했다.
사실 파고들자면, 하드웨어적 구성 방식이나 서버 구축 방식 등 다른 부분이 있을 수도 있으나
너무 많은 내용에 머리에서 과부하가 왔다..🙄
궁금한 건 못 참지만 공부해야 하는 건 너무나 많다는 사실
참고 블로그 및 자료
https://futurecreator.github.io/2019/03/14/serverless-architecture/
서버리스 Serverless 아키텍처 파헤치기
서버리스(Serverless)하면 대부분 AWS Lambda 를 떠올리곤 합니다. 하지만 서버리스는 단순히 FaaS(Function-as-a-Service)만을 의미하지는 않습니다. 이번 포스트에서는 서버리스 아키텍처에 대한 개념과 키
futurecreator.github.io
https://taeny.dev/javascript/nextjs-with-deployment-platform#23e6e0d4eb954d4d8210b76bbb168763
🚀 nextJS 뭘로 배포할까? (Netlify, Vercel, Github page)
Learn in Public
taeny.dev
반응형'개발일지 > FE' 카테고리의 다른 글
[FE] 개발을 위한 준비 1 (0) 2022.12.21 [#5-day] 프론트엔드 공부 주저리 (0) 2022.11.03 [#4day] 프론트엔드 공부 주저리 (0) 2022.10.27 [#3day] 프론트엔드 공부 주저리 (0) 2022.10.25 [#2day] 프론트엔드 공부 주저리 (0) 2022.10.20