우리가 네이버, 유튜브, 구글 같은 웹사이트에 접속할 때 어떤 일이 일어날까?
예를 들어 브라우저에 다음 주소를 입력한다고 생각해보자.
www.naver.com
서버는 쉽게 말해 다른 컴퓨터에게 정보를 제공하는 컴퓨터다.
우리가 유튜브 영상을 볼 수 있는 이유는 유튜브 서버에 영상 데이터가 있기 때문이다.
우리가 쇼핑몰에서 상품을 볼 수 있는 이유는 쇼핑몰 서버에 상품 정보가 있기 때문이다.
서버는 웹서비스 뒤에서 다음과 같은 일을 한다.
즉, 서버는 웹사이트 뒤에서 열심히 일하는 핵심 컴퓨터라고 볼 수 있다.
서버를 직접 사지 않고 인터넷으로 빌려 쓰는 방식
회사나 개인이 서버를 직접 사고, 직접 설치하고, 직접 관리하는 방식
클라우드와 온프레미스의 가장 큰 차이는 서버를 직접 소유하느냐, 빌려 쓰느냐다.
| 구분 | 온프레미스 | 클라우드 |
|---|---|---|
| 의미 | 서버를 직접 구매하고 운영한다 | 인터넷으로 서버를 빌려 쓴다 |
| 비용 | 처음에 큰 비용이 든다 | 필요한 만큼만 비용을 낸다 |
| 관리 | 직접 관리해야 한다 | 클라우드 회사가 많은 부분을 관리한다 |
| 확장 | 서버를 추가로 사야 한다 | 버튼 몇 번으로 쉽게 늘릴 수 있다 |
| 예시 | 회사 내부 서버실 | AWS, Google Cloud, Azure |

Infrastructure as a Service의 줄임말로 인프라를 서비스로 제공한다는 뜻
여기서 인프라는 서버, 저장공간, 네트워크 같은 기본 컴퓨터 자원을 말한다.
IaaS는 쉽게 말해 서버 같은 기본 장비만 빌려주는 서비스다.
피자 비유로 생각하면 다음과 같다.
주방, 오븐, 재료는 빌려주지만 피자는 직접 만들어야 하는 방식이다.
즉, 서버는 빌릴 수 있지만 그 서버에 프로그램을 설치하고, 설정하고, 관리하는 일은 사용자가 직접 해야 한다.
대표적인 예시는 AWS EC2다.
EC2는 AWS에서 가상 서버를 빌려 쓰는 서비스다.
내가 직접 서버를 산 것은 아니지만, 마치 내 서버처럼 사용할 수 있다.
PaaS는 Platform as a Service의 줄임말로 플랫폼을 서비스로 제공한다는 뜻이다.
PaaS는 개발자가 애플리케이션을 만들고 실행할 수 있는 환경을 제공한다.
IaaS보다 더 많은 것이 준비되어 있다.
서버 관리나 복잡한 환경 설정을 줄이고, 개발자는 코드 작성과 배포에 더 집중할 수 있다.
피자 비유로 생각하면 다음과 같다.
주방도 준비되어 있고, 오븐 온도도 맞춰져 있으니 사용자는 토핑만 올리면 되는 방식이다.
대표적인 예시는 다음과 같다.
PaaS는 서버를 깊게 관리하기보다는 애플리케이션 개발에 집중하고 싶을 때 유용하다.
SaaS는 Software as a Service의 줄임말로 소프트웨어를 서비스로 제공한다는 뜻이다.
SaaS는 이미 완성된 프로그램을 인터넷으로 사용하는 방식이다.
우리가 평소에 사용하는 많은 서비스가 SaaS에 해당한다.
사용자는 서버가 어디 있는지, 데이터베이스가 어떻게 구성되어 있는지 알 필요가 없다.
그냥 로그인해서 서비스를 사용하면 된다.
피자 비유로 생각하면 다음과 같다.
이미 완성된 피자를 받아서 먹기만 하는 방식이다.
IaaS, PaaS, SaaS는 사용자가 직접 관리해야 하는 범위가 다르다.
| 구분 | 설명 | 비유 | 예시 |
|---|---|---|---|
| IaaS | 서버와 인프라를 빌려 쓴다 | 주방과 재료를 빌려 직접 요리한다 | AWS EC2 |
| PaaS | 개발 환경을 빌려 쓴다 | 준비된 주방에서 토핑만 올린다 | Heroku, Elastic Beanstalk |
| SaaS | 완성된 소프트웨어를 사용한다 | 완성된 피자를 먹는다 | Gmail, Notion, Slack |
관리 범위로 보면
IaaS → 직접 관리할 것이 많다
PaaS → 어느 정도 준비되어 있다
SaaS → 거의 사용할 일만 남아 있다
웹사이트는 사용자의 요청과 서버의 응답으로 동작한다.
사용자가 브라우저에서 웹사이트 주소를 입력하면, 브라우저는 서버에 요청을 보낸다.
서버는 필요한 데이터를 다시 보내고, 브라우저는 그 데이터를 화면에 보여준다.
이때 서버를 직접 사서 운영하면 온프레미스 방식이다.
서버를 직접 사지 않고 인터넷으로 빌려 쓰면 클라우드 방식이다.
AWS는 대표적인 클라우드 서비스로 서버, 저장공간, 데이터베이스 같은 자원을 필요한 만큼 빌려 쓸 수 있다.
클라우드 서비스는 제공되는 범위에 따라 IaaS, PaaS, SaaS로 나뉜다.
IaaS는 서버 같은 기본 인프라를 제공한다.
PaaS는 개발자가 앱을 만들고 실행할 수 있는 환경을 제공한다.
SaaS는 완성된 소프트웨어를 바로 사용할 수 있게 제공한다.