Skip to content

Computing Models

클라우드에서의 컴퓨팅

클라우드에서 애플리케이션을 실행하는 방식은 다양하지만, 보통 3가지 주요 컴퓨팅 모델이 많이 쓰인다.


1. Virtual Server

물리적 서버를 가상화 기술로 여러 개의 독립된 서버처럼 나누어 사용

  • 각 VM은 독립된 OS와 애플리케이션을 가짐
  • 사용자가 직접 OS와 서버를 관리해야 함
  • IaaS(서비스형 인프라)의 대표적인 형태

💡 특징: 무겁지만, 완전한 독립성을 제공 → 예: EC2


2. Container Server

  • 애플리케이션과 필요한 실행 환경(코드, 라이브러리, 런타임)을 패키징하여 컨테이너로 실행
  • 호스트 OS 커널을 공유하기 때문에 가상 머신보다 훨씬 가볍고 빠름
  • 컨테이너 실행을 위해 Docker, Kubernetes 같은 오케스트레이션 도구 활용
  • 사용자가 OS까지는 직접 관리

💡 특징: 가볍고 빠르며 이식성이 뛰어남 → 예: ECS, EKS


3. Serverless Computing

  • 개발자가 서버 인프라를 직접 관리하지 않아도 애플리케이션 실행 가능
  • 서버는 실제로 존재하지만, 클라우드 제공 업체가 관리
  • 사용자는 코드만 작성하고, 실행 시간만큼 과금됨
  • 자동 확장과 이벤트 기반 실행에 유리

💡 특징: 서버 관리 X, 코드 실행에만 집중 → 예: AWS Lambda


Virtual Server vs Container vs Serverless

구분Virtual ServerContainer ServerServerless
OS 관리직접 관리직접 관리 (공유 커널)클라우드 업체가 관리
무게감무거움가벼움가장 가벼움
실행 단위VM (가상머신)컨테이너함수(Function) 단위 실행
확장성수동 확장자동화 도구로 확장 가능자동 확장
예시 서비스 (AWS)EC2ECS, EKSLambda