[대규모 시스템 설계 스터디] 2장 정리

김연준·2026년 7월 9일
post-thumbnail

개략적인 규모 추정이란?

개략적인 규모 추정은 보편적으로 통용되는 성능 수치를 바탕으로 사고 실험을 행하여 추정치를 계산하는 행위다. 어떤 설계가 요구사항에 부합할 것인지 가늠해 보기 위한 것이다.


2의 제곱수

데이터 크기를 다룰 때는 2의 제곱수 단위를 알아두는 것이 좋다.


응답 지연(Latency) 값

책에 나온 수치들을 분석한 결과는 다음과 같다.

  • 메모리는 빠르지만 디스크는 아직 느리다.
  • 디스크 탐색(seek)은 가능한 한 피해야 한다.
  • 단순한 압축 알고리즘은 빠르다. 데이터를 인터넷으로 전송하기 전에는 가능하면 압축할 것.
  • 데이터 센터는 보통 여러 지역에 분산되어 있고, 센터들 간에 데이터를 주고받는 데 시간이 걸린다.

가용성 (Availability)

고가용성

시스템이 오랜 시간 동안 지속적으로 중단 없이 운영될 수 있는 능력을 지칭하는 용어다.

  • 고가용성은 %로 표현한다.
  • 100%는 시스템이 단 한 번도 중단된 적이 없었음을 의미한다.

SLA (Service Level Agreement)

서비스 사업자와 고객 사이에 맺어진 합의다.

  • 이 합의 안에 사업자가 제공하는 서비스의 가용 시간이 공식적으로 기술되어 있다.
  • 관습적으로 숫자 9를 사용해 표시하며, 9가 많을 수록 좋다.

자주 출제되는 추정 문제

많이 출제되는 개략적 규모 추정 문제는 다음을 추정하는 것이다.

  • QPS
  • 최대 QPS (Peak QPS)
  • 저장소 요구량
  • 캐시 요구량
  • 서버 수

💡 추정할 때는 단위를 붙이는 습관이 중요하다.


궁금한 점

Q. 트위터 QPS와 저장소 요구량 추정에서 최대 QPS(Peak QPS)는 계산된 QPS에 2를 곱하는 것이 관습인지, 근거가 있는 것인지?

A. 관습적인 어림값이다.

트래픽은 하루 종일 일정하지 않고, 사용자가 몰리는 시간대(점심·저녁 등)와 새벽처럼 거의 없는 시간대가 존재한다. 평균값만으로 서버 용량을 정하면 피크 시간대를 감당하지 못하므로, 여유를 두기 위해 평균에 배수를 곱해 최대치를 가늠한다.

여기서 "×2"는 개략 추정이나 면접에서 편의상 쓰는 관습적 수치일 뿐, 근거가 있는 공식은 아니다.

  • 이벤트성 트래픽(티켓팅, 수강신청, 세일)은 평균의 수십~수백 배까지 튀기도 한다.
  • 트래픽이 고른 서비스는 1.5배 정도로도 충분할 수 있다.
  • 실무에서는 실제 트래픽 로그로 peak/average 비율을 측정해서 배수를 정한다.

즉, "최대 QPS = 평균 QPS × 2"는 빠르게 감을 잡기 위한 rule of thumb이라고 이해하면 된다.

profile
Live a life you will remember

0개의 댓글