캐시의 장점으로는 디스크나 네트워크에서 데이터를 가져오는 것보다 훨씬 빠른 속도로 데이터에 접근할 수 있습니다. 또한 매번 데이터를 새로 요청하는 것보다 캐시를 사용하면 서버 부하를 줄이고, 빠른 응답 시간과 성능 개선 효과를 얻을 수 있습니다.
단점으로는 캐시에 저장할 수 있는 데이터의 양이 메모리 용량에 따라 한계가 있어 큰 용량의 데이터를 다루기가 어렵습니다. 또한 코드의 복잡성이 증가해 관리와 유지보수에 대한 비용이 증가할 수 있습니다.
프론트엔드에서 캐시를 사용할 수 있는 영역은 첫번째로 브라우저 캐시가 있습니다. 웹 페이지에서 사용되는 이미지, 스크립트, 스타일 시트 등의 자원을 브라우저 캐시에 저장해둘 수 있습니다. 이를 통해 같은 자원에 대한 요청이 있을 때 서버에 요청하지 않고 브라우저 캐시에서 불러올 수 있습니다.
두번째로 로컬 스토리지 캐시가 있습니다. 로컬 스토리지는 브라우저 내에 데이터를 저장하는 기능입니다. 로컬 스토리지를 사용해 웹 페이지에서 자주 사용되는 데이터나 사용자 정보 등을 브라우저에 저장해두면, 이후에 같은 데이터나 정보를 요청할 때 서버에 요청하지 않고 로컬 스토리지에서 불러올 수 있습니다.
파레토 법칙과, 캐시에 저장되는 정보(지역성)
시간적 지역성
공간적 지역성
순차 지역성