서버 RAM 용량 추정기
동시 접속·워커 수·프로세스당 메모리로 웹 서버에 필요한 RAM 용량을 추정합니다.
웹·API 서버에 RAM을 얼마나 잡아야 할지 감이 안 잡힐 때 쓰는 서버 RAM 용량 추정기입니다. 워커 프로세스 수, 워커 1개당 메모리, OS 기본 오버헤드, 캐시·DB 예비, 안전 여유(%)를 넣으면 권장 메모리를 계산하고 1·2·4·8·16·32·64GB 중 가장 가까운 상위 RAM 등급으로 올림해 추천합니다.
VPS·클라우드 인스턴스 사이즈를 고르거나 컨테이너에 메모리 한도를 설정하기 전에 빠르게 어림하기 좋습니다. 트래픽이 늘었을 때의 비용까지 함께 보려면 대역폭 비용 계산기, 가용성 목표와 다운타임 환산은 SLA 계산기를 함께 쓰세요.
추정 결과
| 워커 합계 (MB) | 1,024 |
|---|---|
| 소계 (MB) | 2,048 |
| 여유 포함 (MB) | 2,457.6 |
| 권장 RAM 등급 | 4 GB |
계산 방식
이 도구는 다음 순서로 권장 메모리를 구합니다.
- 워커 합계 = 워커 수 × 워커당 메모리(MB)
- 소계 = OS 오버헤드 + 워커 합계 + 캐시·DB 예비
- 여유 포함 = 소계 × (1 + 안전 여유% ÷ 100)
- 권장 등급 = 여유 포함 값을 1·2·4·8·16·32·64GB 중 바로 위 등급으로 올림
워커당 메모리는 어떻게 정하나
워커 1개당 메모리는 추정이 아니라 실제 앱 프로파일링에서 나와야 정확합니다. 운영 중 프로세스의 RSS를 관측하고 피크 시 사용량에 여유를 더해 잡으세요. PHP-FPM·Gunicorn·Node 클러스터처럼 멀티프로세스 모델은 워커 수 × 워커당 메모리가 그대로 더해집니다.
캐시와 DB가 더 클 수 있다
같은 서버에서 데이터베이스나 인메모리 캐시(Redis·Memcached)를 돌리면 이쪽이 워커 합계보다 메모리를 훨씬 많이 잡아먹는 경우가 흔합니다. 예를 들어 Redis 캐시에 4GB를 할당했다면 캐시·DB 예비를 4096MB로 넣어 반영하세요. DB를 별도 서버로 분리하면 이 예비를 0으로 두면 됩니다.
자주 묻는 질문
RAM 등급은 어떻게 올림하나요?
여유를 더한 메모리 값을 1, 2, 4, 8, 16, 32, 64GB 중 그 값 이상인 가장 작은 등급으로 올립니다. 예를 들어 여유 포함 값이 5.5GB면 8GB를 추천합니다.
워커당 메모리는 무엇으로 채우나요?
운영 환경에서 측정한 프로세스당 실제 메모리(RSS) 피크에 여유를 더해 넣는 것이 가장 정확합니다. 개발 환경 수치는 보통 운영보다 낮으니 주의하세요.
데이터베이스를 별도 서버로 두면요?
DB나 캐시가 다른 서버에 있다면 캐시·DB 예비 항목을 0으로 두세요. 그러면 워커와 OS 오버헤드만 반영됩니다.
안전 여유는 몇 %가 적당한가요?
정답은 없지만 보통 20~30%를 둡니다. 트래픽 변동이 크거나 메모리 누수 가능성이 있는 워크로드는 더 여유를 두는 편이 안전합니다.
입력한 값이 서버로 전송되나요?
아니요. 모든 계산은 브라우저 안에서만 처리되며, 입력한 숫자는 어디로도 전송되거나 저장되지 않습니다.