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

어떤 데이터는 왜 순식간에 오고, 어떤 건 한참 걸릴까?

함정 질문똑같이 "데이터를 가져온다"인데, 어떤 건 0.000001초에 끝나고 어떤 건 0.1초나 걸리는 이유는 뭘까요?

그림으로 보기

기다림의 사다리 — 책상 서랍에서 꺼내는 데 1초라면

가장 가까운 책상 서랍에서 꺼내는 데 1초가 걸린다고 치고, 나머지 시간을 전부 같은 비율로 늘렸습니다.

  • 책상 서랍L1 캐시에서 읽기0.5 ns1초
  • 방 안 책장메인 메모리에서 읽기100 ns3.3분
  • 건물 안 창고SSD에서 한 번 읽기150 µs3.5일
  • 옆 건물같은 데이터센터 안 왕복0.5 ms11.6일
  • 도시 외곽 창고하드디스크 헤드 이동10 ms7.6개월
  • 다른 도시대륙 간 왕복 (미국↔유럽)150 ms9.5년

외부 호출 한 번을 기다리는 동안, CPU는 명령 수억 개를 실행할 수 있었습니다.

출처: Jeff Dean · Peter Norvig, “Latency Numbers Every Programmer Should Know” (사람 시간 환산: hellerbarde). 막대는 로그 스케일.

문장 따라가기

1/39

어떤 데이터는 왜 순식간에 오고, 어떤 건 한참 걸릴까요?

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

이렇게 생각해 보세요

책상 서랍에서 꺼내는 것, 방 안 책장까지 걸어가는 것, 건물 안 창고까지 내려가는 것, 옆 건물에 다녀오는 것, 도시 외곽 창고까지 가는 것, 다른 도시로 사람을 보내는 것 — 여섯 가지는 전혀 다른 일입니다. 가져오는 물건이 같아도 걸리는 시간이 다릅니다.

컴퓨터에도 똑같은 사다리가 있습니다. 가까운 칸일수록 빠르지만 작고, 먼 칸일수록 느리지만 큽니다. 자주 쓰는 값을 가까운 칸에 복사해 두는 장치가 캐시입니다.

위 표에서 왼쪽 배지가 그 "거리"이고, 오른쪽이 사람이 아는 시간으로 늘린 값입니다. 코드에서는 어느 칸이든 그냥 한 줄로 보인다는 점이 이 장의 함정입니다.

숫자로 뒤집기

계산 · 지금 계산됨

가장 가까운 책상 서랍에서 값 하나 꺼내는 데 1초가 걸린다고 해봅시다. 그러면 방 안 책장(메모리)까지는 3.3분, 건물 창고(디스크)까지는 3.5일이 걸립니다.

다른 도시(대륙을 건너는 왕복)에 다녀오는 일은 9.5년입니다 — 서랍을 여는 것보다 300,000,000배 먼 길입니다. 그런데 코드에서는 둘 다 그냥 한 줄입니다.

이 숫자는 문구에 박아둔 값이 아니라, 이 화면을 그릴 때 산수로 계산한 값입니다.

시뮬레이터에서 해보기

  1. 1.'캐시 추가' 프리셋을 열면 Redis 노드의 cache hit rate (%)가 95입니다 — 10초 재생하면 Redis가 13,915건을 즉답하고, 뒤의 MySQL은 6,685건만 받습니다.
  2. 2.인스펙터에서 그 값을 50으로 내려 보세요. 가까운 서랍(캐시)에서 못 찾는 일이 10배로 늘고, 그만큼 더 먼 곳(MySQL)까지 다녀와야 합니다 — 이 장의 사다리가 처리량으로 나타납니다.
  • cache hit rate를 95에서 50으로 내렸을 때, MySQL 카드가 받는 요청 수가 어떻게 변하는지 보세요.
  • 캐시에서 못 찾은 요청은 결국 한 칸 더 먼 곳까지 다녀옵니다 — 사다리를 한 칸 내려간 셈입니다.
시뮬레이터에서 열기 →

한 문장으로

속도 차이는 얼마나 열심히 하느냐가 아니라, 얼마나 멀리 다녀오느냐에서 옵니다.

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

확인 문제

0 / 3 맞음
  1. 1.캐시를 두는 이유를 가장 잘 설명한 것은?

  2. 2.사다리에서 한 칸 아래(더 먼 곳)로 내려갈수록 함께 늘어나는 것은?

  3. 3.캐시 적중률이 95%에서 50%로 떨어지면 뒤에 있는 데이터베이스가 받는 요청은?

새로 나온 말

캐시
자주 쓰는 값을 가까운 곳에 복사해 두는 작은 저장 공간입니다.
캐시 적중률
찾으러 갔을 때 캐시에 이미 있어서 먼 길을 안 가도 되는 비율입니다. 95%면 스무 번에 한 번만 멀리 갑니다.
지연 시간
부탁한 값이 도착할 때까지 기다리는 시간입니다. 초당 몇 건을 처리하느냐(처리량)와는 다른 이야기입니다.

이전 장

GHz가 2배면 정말 2배 빨라질까?

다음 장

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

serversim

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

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

제품

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

자료

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

정책

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