면접에서는 설계뿐 아니라 “어느 정도의 자원이 필요할지”를 가늠하는 감각이 중요하다.
이를 ‘규모 추정(Capacity Estimation)’이라 한다.
2의 제곱수 단위
| 제곱 | 값 | 단위 |
|---|
| 2¹⁰ | 1천 | 1KB |
| 2²⁰ | 1백만 | 1MB |
| 2³⁰ | 10억 | 1GB |
| 2⁴⁰ | 1조 | 1TB |
| 2⁵⁰ | 1000조 | 1PB |
응답 지연(latency) 감각
- 메모리 접근은 빠르지만 디스크 I/O는 여전히 느림
- 디스크 탐색은 반드시 피할 것
- 네트워크 전송 전엔 가능한 한 압축
- 데이터센터 간 전송은 지역 간 거리로 인해 지연 발생
가용성(Availability)
- 고가용성은 시스템이 오랜 시간 중단 없이 동작하는 능력을 의미한다.
- 100%는 시스템이 단 한 번도 중단된 적이 없었음을 의미하며, 대부분의 서비스는 99%에서 100% 사이의 값을 갖는다.
- SLA(Service Level Agreement)은 서비스 제공자와 고객 간의 가용성 계약이다.
| 가용성 | 연간 다운타임 |
|---|
| 99% | 약 3.65일 |
| 99.9% | 약 8시간 45분 |
| 99.99% | 약 52분 |
| 99.999% | 약 5분 |
면접 실전 팁
- 근사치 계산으로 빠르게 추정하라
- 가정(Assumptions)은 적어 놔라
- 단위를 붙이라 (MB, QPS 등)
- 자주 나오는 문제 유형: QPS(초당 요청 수), 최대 QPS, 저장소 요구, 캐시 용량, 서버 수 추정