캐시는 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. 캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다.
- 위키백과
모든 데이터를 캐시에 담기에는 저장 공간이 그리 크지 않다. 그래서 보통 지역성을 나우어 캐시를 분류한다. 지역성에는 크게 두 개가 있다.
1) 시간적 지역성
- 특정 데이터가 한번 접근되었을 경우, 가까운 미래에 또 한번 데이터에 접근할 가능성이 높은 것
- 이런 경우 캐시에 한번 가져와서 저장한 후, 여러 번 사용하게 되면 메모리에 접근하는 횟수가 줄어든다. 따라서 캐시는 반복적으로 사용되는 데이터가 많을수록 높은 효율성을 낸다.
2) 공간적 지역성
- 특정 데이터와 가까운 주소가 순서대로 접근되었을 경우
- CPU 캐시나 디스크 캐시의 경우에는 한 메모리 주소에 접근할 때 그 주소뿐 아니라 해당 블록을 전부 캐시에 가져오게 된다.
- 이때, 메모리 주소를 오름차순이나 내림차순으로 접근하면, 캐시에 이미 저장된 같은 블록의 데이터에 접근하게 된다. 덕분에 캐시의 효율성이 크게 향상된다.
- 다시 말해, 앞으로 사용할 데이터들이 가져올 블록안에 모여 있는 것을 말한다. 필요한 데이터가 모여 있다면 한번만 메모링 접근해도 필요하 데이터를 가져올 수 있다.
---
웹 캐시(Web Cache)
- 사용자(Client)가 웹 사이트(Server)에 접속할 때, 정적 컨텐츠(이미지, JS, CSS 등)를 특정 위치에 저장하여, 웹 사이트 서버에 해당 컨텐츠를 매번 요청하여 받는 것이 아니라, 특정 위치에서 불러옴으로써 사이트 응답시간을 줄이고 서버 트래픽 감소 효과를 볼 수 있다.
참고 영상 및 글
캐시/ 웹 캐시(Cache)란? (개념/ 사용 이유/ 장점/ 동작 원리)
https://jeongkyun-it.tistory.com/173
댓글