개요
AWS 클라우드에서 웹사이트나 애플리케이션을 운영할 때 **서버가 갑자기 멈추면 어떻게 하지?**라는 걱정을 해보신 적이 있으신가요?
본 가이드는 하나의 큰 서버 대신 여러개의 작은 서버를 사용하여 서비스를 더 안정적이고 경제적으로 운영하는 방법을 쉽게 설명합니다.
1. 단일 서버 방식
🖥️ 단일 서버란?
쉬운 비유: 가게에 사장님 혼자서 모든 일을 처리하는 것과 같습니다.
👤 고객 → 🖥️ 서버 1대 → 💾 데이터베이스
✅ 단일 서버의 장점
- 구조가 단순합니다.
- 관리할 서버가 1대뿐이라 설정이 쉽습니다.
- 로드밸런서 등 추가적인 네트워크 인프라가 불필요합니다.
- 초기 설정 시간과 비용을 절약할 수 있습니다.
- 비용이 명확합니다.
- 서버 1대 비용만 계산하면 됩니다.
- 예상치 못한 추가 비용 발생이 없습니다.
❌단일 서버의 문제점
- 서버 장애 = 서비스 완전 중단
- 트래픽 급증 시 대응 불가
- 평소보다 방문자가 많아지면 서버가 다운될 수 있습니다.
- 이벤트나 광고 시 위험 요인이 존재합니다.
- 서버 성능 한계
- 더 좋은 성능이 필요하면 서버 전체를 업그레이드(스케일 아웃) 해야합니다.
- 서버 성능 변경 시 기본적으로는 서비스가 중단되는 문제가 있습니다.
- 애플리케이션 업데이트 시 중단
- 서버 내에 실행중인 웹서비스나 애플리케이션을 업데이트할 때 중단이 발생할 수 있습니다.
- 비용 비효율성
- 사용자가 최대로 몰리는 시점을 기준으로 삼아 서버의 성능을 정하기 때문에, 사용자가 상대적으로 적은 시간대에서는 서버의 자원이 낭비됩니다.
2. 이중화 (고가용성, High Availability)
👬이중화란?
쉬운 비유: 가게에 직원이 2명이 있어서, 한 명이 아파도 다른 한 명이 가게를 운영할 수 있는 것과 같습니다.