가상 면접 사례로 배우는 대규모 시스템 설계 기초 (알렉스 쉬 저)를 읽고 정리합니다.

💡 만약에 내가 면접에 가. 근데 면접자가 시스템 용량이나 성능 요구사항을 추정해보래. 그럼 뭐라고 대답해야 하게요?

👉 보편적인 성능 수치 측정 도구를 이용해 추정치를 계산해보자!

1️⃣ 2의 제곱 수

  • 데이터 볼륨 단위를 2의 제곱수로 표현하자.
    • 최소 단위 : 1바이트 (= ASCII 문자 하나가 차지하는 메모리 크기)
2의 x 제곱이름축약형
101 킬로바이트1KB
201 메가바이트1MB
301 기가바이트1GB
401 테라바이트1TB
501 페타바이트1PB

2️⃣ 응답 지연 (latency) 값

  • 대충 이런걸 알 수 있다
    • 메모리는 빠르지만 디스크는 느리니까 가능한 디스크 탐색은 피해라
    • 단순 압축 알고리즘은 빠르니까, 데이터를 전송하기 전에 가능한 압축해라
    • 데이터센터는 분산되어 있고, 센터간 데이터 주고받는데는 시간이 걸린다

3️⃣ 가용성 관련 수치

  • 시스템이 중단 없이 지속적으로 운영될 수 있는지 측정하는 방법
  • 100%면 한번도 중단 된 적 없다는 의미

4️⃣ 팁

💡 결과보다 과정이 중요! 문제 해결 능력에 초점

  • 근사치 활용해서 계산하기
  • 가정를 확인하기 위해 적어두기
  • 단위 붙여서 정확하게
  • 주로 QPS, 최대 QPS, 저장소 요구량, 캐시 요구량, 서버 수 추정을 많이 물어본다.
profile
호그와트 장학생

0개의 댓글