기술 스택과 사용 패턴을 고려했을 때, 다음과 같이 3가지 옵션을 추천드립니다:
📊 추천 구성 비교
| 구분 | Option 1: C7i-flex | Option 2: M7i-flex | Option 3: C7g (Graviton) |
|---|---|---|---|
| 인스턴스 | c7i-flex.xlarge | m7i-flex.xlarge | c7g.xlarge |
| vCPU | 4 | 4 | 4 |
| 메모리 | 8GB | 8GB | 8GB |
| 프로세서 | Intel Xeon (4세대) | Intel Xeon (4세대) | AWS Graviton3 |
| 대역폭 | Up to 10Gbps | Up to 10Gbps | Up to 10Gbps |
| 시간당 요금 | ~$0.19 | ~$0.22 | ~$0.15 |
| 월 비용 | ~$136 | ~$158 | ~$108 |
1️⃣ 최고 성능: C7i-flex.xlarge ⭐ 추천
text비용: 약 $136/월 (약 ₩180,000)
특징: Intel 최신 세대, CPU 최적화
장점:
- ✅ Ktor 서버에 최적화된 고성능
- ✅ Single-threaded 성능 우수 (JVM 호환성)
- ✅ 기존 세대(C6i) 대비 19% 더 나은 가격대비 성능
- ✅ 트래픽 스파이크 처리 능력 우수
단점:
- ❌ Graviton 대비 25-30% 비싼 비용
- ❌ 전력 소비량 더 많음
추천 대상:
- API 응답성이 중요한 서비스
- 높은 동시성 처리 필요
- 다양한 x86 라이브러리 활용
2️⃣ 균형형: M7i-flex.xlarge
text비용: 약 $158/월 (약 ₩210,000)
특징: 범용 인스턴스, CPU+메모리 밸런스
장점:
- ✅ CPU와 메모리 밸런스 제공
- ✅ 데이터베이스 캐싱, 메모리 집약적 작업에 좋음
- ✅ 미래 확장 유연함
단점:
- ❌ C7i 대비 비쌈 (필요 없는 메모리)
- ❌ Ktor 서버 같은 CPU 집약적 작업에는 오버스펙
추천 대상:
- Ktor + Redis/캐시 함께 구성
- 복합 워크로드 (API + 배치 작업)
3️⃣ 최고 비용 효율: C7g.xlarge (Graviton3) 🚀
text비용: 약 $108/월 (약 ₩143,000)
특징: ARM 기반, 에너지 효율, 30% 저렴
성능 비교:
- Kotlin/JVM: Graviton이 8vCPU 이상에서 진정한 이점 발휘
- 당신의 4vCPU 기준으로는 Intel과 약 5-10% 성능차
- 하지만 30% 저렴하므로 가성비는 최고
장점:
- ✅ 월 $50 이상 절감 (연 $600)
- ✅ 전력 효율 60% 더 좋음 (에너지 비용)
- ✅ 최신 ARM 지원 (모던 Kotlin 완벽 호환)
- ✅ AWS에서만 제공 (가격 경쟁력 높음)
단점:
- ❌ 저 동시성(스레드 수 < 4)에서 Intel이 약간 나음
- ❌ 일부 레거시 x86-only 라이브러리 문제 (대부분 해결됨)
- ❌ 더 빠른 부팅은 되지만 미묘한 차이
추천 대상:
- ✅ zeliai.com 같은 스타트업 (비용 최소화 필수)
- ✅ API 집약적 워크로드
- ✅ 향후 멀티 인스턴스 확장 계획
💰 월별 비용 계산 (온디맨드 기준)
서울 리전 (ap-northeast-2) 기준 (2026년 1월 현재)
C7i-flex.xlarge
text시간당 요금: $0.19 USD
일일 비용: $0.19 × 24 = $4.56
월 비용: $0.19 × 730 = $138.70 USD
KRW 환산: ~₩184,500 (1 USD = 1,330 KRW 기준)
연간 비용: $1,662.80 USD (~₩2,212,000)
M7i-flex.xlarge
text시간당 요금: $0.22 USD
월 비용: $0.22 × 730 = $160.60 USD
KRW 환산: ~₩213,600
연간 비용: $1,927.20 USD (~₩2,563,000)
C7g.xlarge (Graviton3) 🏆
text시간당 요금: $0.15 USD
월 비용: $0.15 × 730 = $109.50 USD
KRW 환산: ~₩145,635
연간 비용: $1,314 USD (~₩1,749,000)
🎯 최종 추천
| 우선순위 | 추천 | 이유 |
|---|---|---|
| 1순위 | C7g.xlarge (Graviton) | 가성비 최고 + 비용 30% 절감 + 충분한 성능 |
| 2순위 | C7i-flex.xlarge | 최고 성능 필요시 선택 (약 $30/월 추가) |
| 3순위 | M7i-flex.xlarge | 캐시/메모리 집약적이면 선택 |
📈 스케일링 기준
- RPS 10,000 이상 → c7i.2xlarge 또는 c7g.2xlarge로 업그레이드
- 데이터베이스 읽기 많음 → m7i-flex 고려
- 멀티 인스턴스 구성 → ALB 뒤 c7g 3~4개 권장
🔧 추가 최적화 팁
kotlin// Ktor 성능 최적화
embeddedServer(Netty, port = 8080, host = "0.0.0.0") {
// Netty 워커 스레드 = CPU 코어 수 (4 → 4 threads)
// GraalVM native-image 사용 (부팅 30ms, 메모리 50MB)
// 코루틴 최적화로 메모리 사용 ↓
}.start(wait = true)
비용 절감 전략:
- Graviton C7g 사용 → 기본 30% 절감
- Reserved Instance (1년 약정) → 추가 30% 절감 가능
- Spot Instances (내구성 필요 시) → 60-70% 절감 가능
현재 상황이면 C7g.xlarge + Reserved Instance 1년 약정으로 월 ~$75 가능 💎
| 인스턴스 | 안전한 동시 사용자 | 총 사용자 기준 | 월 비용 | 추천 대상 |
|---|---|---|---|---|
| C7g.xlarge | 2,000~4,000명 | 8,000~20,000명 | $108 | 스타트업 |
| C7i-flex.xlarge | 2,000~4,000명 | 8,000~20,000명 | $136 | 성능 우선 |
| C7i.2xlarge | 4,000~8,000명 | 20,000~40,000명 | $280 | 성장 단계 |
| 3×C7g (로드밸런싱) | 6,000~12,000명 | 25,000~60,000명 | $324 | 확장 단계 |
C7g.xlarge 1개로 시작 → 트래픽에 따라 2~3개로 확장하는 로드밸런싱 구조 권장 💎
답글 남기기