CS지식) 캐시

·2022년 5월 27일
0

캐싱과 캐시

캐싱은 기본 데이터 저장소 앞에 데이터 복사본을 저장하는 전략입니다. 캐싱의 장점에는 더 빠른 응답 시간과 데이터를 빠르게 제공하여 사용자 경험을 향상시키는 기능이 있습니다. 캐시 저장소는 일반적으로 기본 저장소보다 사용하는 클라이언트에 더 가깝습니다.

캐시 - 지역성(locality)을 이용하여 데이터 접근 속도를 빠르게 하기 위한 메모리 계층
캐싱 - 캐시 영역으로 데이터를 가져와서 접근하는 방식

프로세서와 캐시

프로세서에서 캐시는 용량이 작고 속도가 빠른 메모리 로,
주 기억장치에 매번 접근하는 것을 피하고자 최근에 사용된 정보를 저장하는데 사용 된다.
일반적으로 2-3개가 있음. L1,L2,L3레벨이라고 부르며 뒤로 갈수록 용량은 크지만 속도는 더 느리다

캐싱의 특징

캐싱이 효과적인 이유는 최근에 사용된 정보가 곧 다시 사용될 가능성이 크기 때문
캐싱 과정에서는 대개 정보를 블록 단위로 동시에 불러온다.
인접한 정보는 곧 사용될 가능성이 높기 때문에 근처 정보를 참조할 때 기다리지 않고 바로 볼 수 있을 것

시간지역성

데이터의 읽기/쓰기를 위해 특정 메모리가 사용됐을 때 가까운 시일 내에 해당 메모리가 다시 사용될 가능성이 높다는 것

공간지역성

공간 지역성은 특정 데이터와 가까운 주소가 순서대로 접근되는 경우를 말합니다. 한 메모리 주소에 접근할 때 그 주소뿐만 아니라 해당 블록을 전부 캐시에 가져옴으로써 공간 지역성의 효율을 높인다

순차적 지역성

분기가 발생하는 비순차적인 실행이 아닌 이상, 명령어들이 메모리에 저장된 순서대로 실행된다는 특성을 이용하여 순차적일수록 데이터가 사용될 가능성이 높다는 것

다양한 캐시

프로세서의 누산기 : 실행 속도를 높인 다는 점에서 캐시라고 볼 수 있음
주 기억장치 : 디스크를 보완하는 캐시
메모리와 디스크 : 네트워크에서 오는 데이터를 빠르게 꺼낼수 있는 점에서 캐시
그 외 네트워크, 서버 등에도 캐시 존재

캐시의 저장과 삭제

브라우저는 페이지 재 방문시 데이터를 빠르게 불러오기 위해 이미지와 같은 비교적 용량이 큰 데이터의 로컬 사본을 유지함.
용량은 유한하기에 오래된 항목부터 조용히 제거함.
브라우저 뿐 아닌 워드나 다른 큰 프로그램같은 경우 두번째 실행할 때 로딩 시간이 짧아지는 것을 확인 가능.
프로그램의 명령어가 아직 메모리에 있고, 메모리가 디스크에 대한 캐시로 사용되기 때문이다.

쿠키와 캐시 차이점

profile
나 예인쓰, 응애인디

0개의 댓글