Cloud Computing은 주로 Web App 개발 및 운영 환경의 비효율성을 극복하기 위해 발전하였습니다:

  • 자원 낭비 문제: 기존 기업들은 예상 최대 트래픽에 맞춰 물리 서버·스토리지를 과잉 설계했지만, 대부분의 시간에는 자원이 낭비되는 구조였습니다.
  • 높은 진입 장벽: 서버 구축, 네트워크 설정, 보안 인프라, 유지보수 인력까지 포함된 막대한 초기 고정비용이 소규모 개발자나 조직에게 부담이었습니다.
  • 분산 협업 수요의 증가: 글로벌 팀들이 동일한 서버 자원에 실시간 접속하고 협업하려면 클라우드 기반의 유연한 접속 구조가 필수였습니다.

이러한 배경 속에서, 인터넷 기반으로 필요한 만큼 자원을 임대하여 사용하는 방식인 Cloud Computing이 등장했고, 이후 대부분의 Web App이 이를 실행 기반으로 채택하게 되었습니다.

대표 사례

유형 대표 사례 설명
Virtual Computing Instance Amazon EC2, GCP Compute Engine 독립된 OS 환경에서 애플리케이션 실행
Web Storage Google Drive, Dropbox, AWS S3 클라우드 기반의 파일 저장소
Web App Google Docs, Figma, Canva, Microsoft 365 사용자에게 UI를 제공하는 웹 기반 응용
Web App 개발 플랫폼 Firebase, Azure App Service, Vercel Web App을 쉽게 배포·관리할 수 있는 서비스
AI/LLM API OpenAI GPT API, Hugging Face, AWS Rekognition 대규모 모델을 API 형태로 제공

Web App (웹 애플리케이션)

  • 정의: 웹 브라우저를 통해 접근 가능한 인터랙티브 응용 프로그램. 사용자의 요청(Request)을 서버가 처리하고, 응답(Response)을 실시간 제공.
  • 특징:

Cloud Computing (클라우드 컴퓨팅)

  • 정의: 데이터 저장소, 계산 자원, 소프트웨어 실행 환경 등인터넷을 통해 원격 서버에서 제공받아 사용하는 컴퓨팅 자원 제공 모델.
  • 주요 속성:

장점 (Pros)

항목 설명
디바이스 독립성 데스크탑, 스마트폰, 태블릿 등 어떤 기기에서도 브라우저만 있으면 사용 가능
초기 비용 없음 서버, 소프트웨어 설치 없이도 바로 사용 가능
유지보수 부담 감소 보안 업데이트, 백업, 패치 등을 서비스 제공자가 자동 처리
온디맨드 확장성 트래픽 증가 시, 자원을 실시간으로 자동 확장 가능
글로벌 협업 최적화 실시간 동시 작업, 파일 공유, 피드백이 용이함

단점 (Cons)

항목 설명
벤더 종속성(Vendor lock-in) 특정 클라우드 제공자에 대한 기술 의존성 및 이전 비용 증가 가능성
인터넷 의존성 네트워크 연결이 불안정하면 사용 자체가 불가능
보안·프라이버시 우려 민감한 정보가 외부 서버에 저장되므로 정보 유출 위험 존재※ 다만 대형 클라우드의 보안 수준은 대부분의 개인 서버보다 강력함