다섯 살도 알 수 있게 · SRE
캐싱이 뭐예요?
캐싱을 안내소 앞에 자주 묻는 질문을 미리 적어둔 메모판 이야기로 풀어봤어요.
같은 질문을 손님마다 또 물어봐요.똑같은 답을 매번 다시 해주느라 창구가 느려져요.
매번 안쪽 창고까지 가서 확인하면 오래 걸려요.확인할 게 많아질수록 왔다 갔다 하는 시간도 쌓여요.
안내소 앞 메모판에 미리 적어두면 바로 보여줄 수 있어요.창고까지 안 가도 메모판만 보면 끝이에요.
자주 묻는 것만 적어요아무거나 다 적진 않아요
답 바뀌면 메모판도 고쳐요캐시 무효화예요
유효기간을 적어둬요TTL이라고 불러요
꽉 차면 오래된 것부터 지워요자리를 늘 비워둬요
메모판은 빠르고, 창고까지 가면 느려요.같은 답이라도 어디서 찾는지에 따라 걸리는 시간이 크게 달라요.
메모판도 틀리거나 몰리면 말썽이에요.틀린 답을 적어두면 다 같이 틀리고, 한꺼번에 몰리면 그 순간은 느려요.
한 줄로
캐싱 = 자주 묻는 답을 안내소 앞 메모판에 미리 적어둬서, 매번 안쪽 창고까지 안 가고도 바로 보여주는 요령.
캐시(cache)는 자주 쓰는 데이터를 더 빠른 자리에 미리 복사해 두는 저장 공간이에요. 원본이 바뀌면 캐시도 갱신하거나 지워야 하는데(invalidation), 이 타이밍을 맞추는 게 캐싱에서 가장 어려운 부분이에요.
어른들은 이렇게 불러요
- 캐시
Cache - 안내소 앞 메모판. 자주 쓰는 답을 미리 적어 놔요.
- TTL
TTL - 메모판에 적힌 유효기간. 지나면 다시 확인하고 새로 적어요.
- 캐시 무효화
Cache invalidation - 답이 바뀌어서 메모판을 고치는 일. 제때 안 고치면 틀린 답이 남아요.
- 캐시 히트 / 미스
Cache hit / miss - 메모판에 있었는지(히트), 없었는지(미스). 미스면 결국 창고까지 가야 해요.
- 캐시 스탬피드
Cache stampede - 손님들이 한꺼번에 메모판으로 몰리는 일. 몰리는 그 순간은 오히려 더 느려요.
- 캐시 계층
Cache layers - 안내소 메모판과 창구 메모판처럼 단계가 여럿인 것. 가까운 메모판부터 차례로 확인해요.
- 일관성
Consistency - 메모판과 창고 답이 서로 맞는지. 조금 늦게 맞춰져도 괜찮을 때가 많아요. → 쉬지 않는 공원을 돌보는 사람들
- 레이턴시
Latency - 손님이 답을 받기까지 걸리는 시간. 메모판을 쓰면 이 시간이 확 줄어요. → 관제실의 계기판 네 개
다음 이야기
번호별로 나뉜 매표 창구 →