serversim
학습시뮬레이터템플릿가격
…
…
메뉴 열기
학습↗시뮬레이터↗템플릿↗가격↗
내 Documents문서
기초 트랙 목차/6 / 86분

서버가 바쁘면 왜 요청이 밀릴까?

함정 질문창구가 아직 꽉 차지도 않았는데, 왜 손님들은 줄에서 오래 기다리게 될까요?

움직여 보기

0/84 스텝속도이용률(%)
0.0초완료01줄 0
응대 중통화 중금고에 감비어 있음

0.0초 · 줄 0명 · 응대 중 0곳 · 완료 0명 — 아직 아무도 오지 않았습니다

문장 따라가기

1/47

서버가 바쁘면 왜 요청이 밀릴까요?

텍스트 모드에서는 3초마다 다음 문장으로 넘어갑니다.

이렇게 생각해 보세요

창구는 하나이고, 손님 한 명을 처리하는 데 6초가 걸립니다. 그러니 1분에 열 명까지는 받을 수 있습니다.

실제로 오는 손님은 1분에 아홉 명입니다. 한 명 분의 여유가 남으니 창구는 열 번 중 아홉 번 바쁩니다 — 이것을 이용률 90%라고 부릅니다.

그런데 손님은 시계처럼 규칙적으로 오지 않습니다. 어떤 1분에는 열두 명이 몰리고 어떤 1분에는 여섯 명만 옵니다. 몰린 순간 생긴 줄은, 남은 여유가 10%뿐이니 좀처럼 사라지지 않습니다.

위 화면에서 이용률을 50에서 90으로 올려 보세요. 창구 수도 처리 시간도 그대로인데 줄만 길어집니다.

숫자로 뒤집기

실측 · 지금 계산됨

이용률 90%로 길게 돌려 보면, 손님 한 명이 줄에서 기다린 시간은 평균 57.0초입니다. 처리에 걸리는 6초의 9.5배를, 아무 일도 하지 않고 서서 보낸 셈입니다.

이용률만 바꿔 같은 시뮬을 네 번 돌리면 기다림은 이렇게 갑니다 — 50%에서 1.0배, 80%에서 3.8배, 90%에서 9.5배, 95%에서 21.6배. 손님을 5% 남짓 더 받았을 뿐인데 기다리는 시간은 두 배가 넘습니다.

줄 길이도 같이 갑니다. 가장 길었을 때 이용률 50%에서는 15명, 90%에서는 81명이 서 있었습니다(위 그림은 그 긴 실행 중 보통의 5분이라, 그 5분만 보면 줄은 이보다 훨씬 짧습니다). 창구는 한 번도 고장 나지 않았고, 처리 속도도 그대로였습니다.

이 곡선에는 이름이 있습니다 — 창구 하나짜리 대기행렬(M/M/1)의 대기 공식입니다. 기다림 = 처리 시간 × 이용률 ÷ (1 − 이용률) — 50·80·90·95%면 각각 1배, 4배, 9배, 19배이고, 손님이 몰려서 오고 한 명당 처리 시간도 제각각일 때 들어맞습니다. 위 실측이 이 선을 따라갑니다 — 서버 사용률을 100%까지 쥐어짜면 안 되는 이유가 여기 있습니다.

이 숫자는 문구에 박아둔 값이 아니라, 이 화면을 그릴 때 시뮬을 돌려 나온 값입니다.

시뮬레이터에서 해보기

  1. 1.'3-tier 기본' 프리셋을 열고 10초 재생하세요 — 기본 1,000 RPS(초당 요청 수)에서 Spring(Tomcat) 카드의 CPU는 63%, 아직 여유가 있습니다.
  2. 2.client 노드의 RPS를 1,500으로 올리면 그 카드의 CPU가 91%가 됩니다. 아직 성공률은 100%입니다 — 창구는 바쁘지만 줄은 흡수되고 있습니다.
  3. 3.1,700으로 한 번 더 올려 보세요. CPU 99%, p99(느린 쪽 100명 중 1명이 겪는 시간)는 291ms — 요청을 13% 더 보냈을 뿐인데 기다리는 시간이 훨씬 크게 뜁니다. 이 장의 곡선이 그대로 나타납니다.
  4. 4.2,000에서는 accept queue(창구 앞 대기 공간)가 넘쳐 queue-full 드롭이 시작되고 성공률이 89.2%로 내려갑니다. 줄이 길어지다 못해 사람을 돌려보내는 상태입니다.
  • RPS를 올릴 때 CPU 게이지보다 p99가 먼저, 그리고 훨씬 크게 움직이는 것을 보세요 — 이 장의 곡선이 화면에서는 그렇게 나타납니다.
  • 요청을 조금 더 보냈을 뿐인데 성공률이 무너지는 지점이 있습니다. 그 지점이 "여유가 사라진 곳"이고, 운영에서 지켜야 하는 선입니다.
시뮬레이터에서 열기 →

한 문장으로

줄이 길어지는 이유는 창구가 느려서가 아니라, 손님이 몰려서 오는데 창구에 남은 여유가 없기 때문입니다.

진도는 이 브라우저에만 저장됩니다 (계정·기기 간 동기화 없음).

확인 문제

0 / 3 맞음
  1. 1.이용률이 90%인 창구에서 대기 시간이 급격히 길어지는 이유는?

  2. 2.이용률을 90%에서 95%로 올리면 평균 대기 시간은?

  3. 3.줄이 길어질 때 가장 먼저 확인할 것은?

새로 나온 말

이용률
창구가 일하고 있는 시간의 비율입니다. 90%면 열 번 중 아홉 번은 이미 손님을 보고 있다는 뜻입니다.
큐
차례를 기다리는 줄입니다. 서버 앞에도 이 줄이 있고, 줄에 설 수 있는 자리에는 한계가 있습니다.
대기 시간
줄에 서서 기다린 시간입니다. 창구에서 실제로 처리되는 시간(처리 시간)과는 다른 이야기입니다.

이전 장

컴퓨터는 기다리는 동안 다른 일을 할 수 있을까?

다음 장

창구가 200개인데 왜 10개만 일할까?

serversim

서버가 느려지고 터지는 이유를 배우고, 같은 현상을 직접 시뮬레이션하는 학습 도구.

© 2025-2026 serversim · 아키텍처 시뮬레이션 도구

제품

  • 학습
  • 시뮬레이터
  • 템플릿
  • 가격

자료

  • 문서
  • 벤치마크
  • 블로그

정책

  • 개인정보
  • 약관
  • 환불 정책