메모리 캐시와 디스크 캐시

웹 브라우저(클라이언트) 캐시에서는 메모리 캐시와 디스크 캐시가 분리되어 있는데

각각 어떤 차이가 있는지 알아보자.


메모리 캐시와 디스크 캐시 차이는 무엇인가?

스크린샷 2022-12-02 19 56 07

개발자 도구창의 네트워크 태그를 확인해보면 위 사진과 같은 메모리 캐시와 디스크 캐시가 나타나 있다.

여기서 유독 둘의 차이가 있다면 용량(Size) 크기가 다르고 크기에 비례하여 시간(Time) 또한 큰 차이가 있다. (이미지에선 크기, 이미지 영역이 잘렸습니다 😰)

fjEnC

디스크 캐시

디스크 캐시는 하드디스크(HDD)에 접근하는 시간을 개선하기 위해 RAM에 저장 한다. 하드디스크에 접근하는 과정보다 RAM 에 접근하는 과정이 시간적 소요가 빠르기 때문이다.

메모리 캐시

캐시 메모리는 RAM에 접근할 필요 없이, 더 빠른 CPU 칩 안에 있는 메모리에(L1, L2, L3) 저장한다.

메모리 캐시나 디스크 캐시가 없다면?

메모리 캐시와 디스크 캐시가 없으면 웹 브라우저는 매번 모든 리소스(정적 및 동적 콘텐츠)를 요청해야 하므로 사용자 경험이 느려지고 서버의 부하가 증가한다.

메모리 캐시와 디스크 캐시는 어떻게 작동하는가?

RAM에서는 메모리 캐싱을 위해 작은 부분이 캐시에 예약되어 있다. 웹 브라우저가 페이지를 요청할 때 일반적으로 메모리 캐시에 이미 있는 데이터를 읽으려고 시도한다.

즉, 브라우저 응용 프로그램은 메모리 캐시에서 데이터를 읽어 하드 디스크나 원격 서버에서 데이터에 액세스할 필요가 없어 진다.

원하는 레코드가 메모리 내 캐시가 아닌 경우 응용 프로그램은 하드 디스크(디스크 캐시)에서 이를 검색하고 찾으면 원격 서버에서 데이터에 액세스할 필요가 없다.

따라서 하드 디스크에서 메모리로 로드되고 브라우저 응용 프로그램에서 사용할 수 있으며 여기에서 해당 리소스를 볼 수 있다.

결론

속도: 메모리 캐시 > 디스크 캐시 용량: 디스크 캐시 > 메모리 캐시

영구성: 디스크 캐시 비영구성: 메모리 캐시(브라우저 닫는 시점까지의 따른 수명)

참고 문헌

메모리 캐시 vs 디스크 캐시 :: 마이구미