Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

웹 가든(Web Garden)과 웹 팜(Web Farm)의 차이점 완벽 정리

웹 애플리케이션을 운영하다 보면 웹 가든(Web Garden)웹 팜(Web Farm)이라는 두 가지 호스팅 구조를 자주 접하게 됩니다. 두 개념 모두 확장성(Scalability)을 높이기 위한 방법이지만, 확장의 방향이 완전히 다릅니다. 이 글에서는 두 방식의 핵심 차이점을 명확하게 정리해 드립니다.

웹 가든(Web Garden)이란?

웹 가든은 하나의 서버 위에서 여러 개의 프로세스(process)를 실행하는 웹 호스팅 방식입니다. 즉, 단일 물리 서버 안에서 다수의 작업자 프로세스를 구동하여 요청을 분산 처리하는 구조입니다.

이러한 구성은 애플리케이션에 논리적 확장성(logical scalability)을 제공합니다. 하나의 프로세스에 병목이 발생하더라도 다른 프로세스가 요청을 계속 처리할 수 있어, CPU가 여러 개인 서버에서 성능을 효과적으로 끌어올릴 수 있습니다.

웹 팜(Web Farm)이란?

웹 팜은 반대로 여러 대의 컴퓨터(서버)로 구성된 웹 호스팅 시스템입니다. 웹 가든이 단일 서버 내에서 프로세스 수준으로 확장한다면, 웹 팜은 물리적으로 분리된 여러 서버에 걸쳐 애플리케이션을 운영합니다.

이 방식은 애플리케이션에 물리적 확장성(physical scalability)을 제공합니다. 일반적으로 로드 밸런서(Load Balancer)를 사용해 구현하며, 로드 밸런서는 전용 프로세스를 통해 들어오는 요청을 각 서버로 분배하고, 여러 서버의 상태(헬스 체크)를 지속적으로 모니터링하여 장애가 발생한 서버로는 트래픽을 보내지 않도록 관리합니다.

핵심 차이점 비교

정리하면 다음과 같습니다.

  • 웹 가든: 단일 서버 + 다중 프로세스 → 논리적 확장성
  • 웹 팜: 다중 서버 + 로드 밸런서 → 물리적 확장성

즉, 웹 가든은 한 대의 강력한 서버의 자원을 최대한 활용하는 수평적 프로세스 확장 기법이고, 웹 팜은 여러 대의 서버를 묶어 트래픽을 분산시키는 인프라 수준의 확장 기법입니다. 서비스 규모와 예산, 장애 대응 전략에 따라 두 방식을 적절히 조합하여 사용하는 것이 일반적입니다.