캐시(Cache)란?

hana jeong·2023년 3월 29일
0

캐시의 장단점과 어떤 부분에 활용하는지 설명해주세요. 프론트엔드에서 캐시를 사용할 수 있는 2~3가지 영역을 제시해주세요

캐시(Cache)는 가져오는데 비용이 드는 데이터를 한 번 가져온 후에 임시로 저장해두는 것이다

장점

  • 빠른 데이터 검색 및 액세스: 캐시에 데이터를 저장 -> 데이터를 다시 가져오는 데 필요한 시간과 네트워크 대역폭을 줄일 수 있음
  • 서버 부하 감소: 캐시를 사용하면 클라이언트가 데이터를 요청할 때마다 서버에서 데이터를 다시 생성하거나 가져올 필요가 없기 때문에 서버의 부하를 줄일 수 있음
  • 대역폭 절약: 캐시를 사용하면, 반복적으로 요청되는 데이터의 경우 브라우저와 서버 간의 데이터 전송 양을 줄일 수 있음

단점

  • 캐시 일관성 유지: 캐시에 저장된 데이터가 최신 상태인지 확인하고 유지하는 것은 복잡한 작업임
  • 공간 제약: 캐시에 저장된 데이터의 크기는 메모리나 디스크 용량에 제한됨
  • 데이터 무효화: 캐시에 저장된 데이터를 무효화하거나 갱신하는 방법을 정의하지 않으면 캐시된 데이터가 오래된 상태로 남아 있을 수 있음

그렇다면 프론트엔드 영역에서 캐시를 사용할 수 있는 곳은 어딜까?

  1. 이미지 캐싱: 이미지 파일은 용량이 크기 때문에 서버에서 매번 다운로드하는 것은 부담스러움. 이미지 캐싱을 통해 이미지 파일을 로컬에 저장하여 다시 다운로드하지 않도록 할 수 있음

  2. 데이터 캐싱: 서버에서 가져온 데이터를 캐시에 저장하여 다시 요청할 때마다 서버에서 데이터를 다시 가져오지 않도록 할 수 있음 이를 통해 서버 부하를 줄일 수 있으며, 빠른 데이터 로딩을 향상시킬 수 있음

  3. 코드 캐싱: 라이브러리나 프레임워크의 경우 매번 로드하는 것은 부담스러울 수 있음
    따라서, 코드 캐싱을 통해 라이브러리나 프레임워크를 로컬에 저장하여 다시 다운로드하지 않도록 코드를 캐싱함

profile
https://developer-hh.tistory.com 로 옮깁니다

0개의 댓글