캐시의 특징
캐시의 장단점과 어떤 부분에 활용하는지 설명해주세요.
프론트엔드에서 캐시를 사용할 수 있는 2~3가지 영역을 제시해주세요
캐시란 데이터나 값을 미리 저장해 두는 임시 저장소를 말합니다. 캐시는 다음과 같은 장단점을 가집니다.
장점:
- 빠른 데이터 접근 속도: 캐시는 CPU에 비해 빠른 속도로 데이터에 접근할 수 있기 때문에, 캐시를 사용하면 데이터 처리 속도를 향상시킬 수 있습니다. 즉, 캐시를 이용하면 웹 페이지 로딩 속도나 애플리케이션 실행 속도 등이 향상됩니다.
- 데이터 중복 최소화: 캐시는 자주 사용되는 데이터를 저장하므로, 메모리 사용량을 줄이고 데이터 중복을 최소화할 수 있습니다.
- 전력 소모 감소: 캐시 메모리를 사용하면 주기적인 데이터 접근이 줄어들기 때문에, 전력 소모를 감소시킬 수 있습니다.
- 안정성 향상: 캐시는 데이터나 값을 저장해 두기 때문에 장애가 발생했을 때도 캐시된 데이터를 이용할 수 있습니다.
- 대역폭 절약: 캐시를 사용하면 브라우저나 서버가 데이터를 다시 요청하지 않고 저장된 캐시를 사용할 수 있기 때문에 대역폭을 절약할 수 있습니다.
단점:
- 고비용: 캐시 메모리는 대부분 고속의 SRAM 기술을 사용하기 때문에 비용이 매우 높습니다.
- 한계 용량: 캐시 메모리는 일반적으로 용량이 제한되어 있기 때문에, 대용량의 데이터를 처리하기에는 한계가 있습니다.
- 일관성 유지 어려움: 캐시에서 저장된 데이터가 변경되는 경우, 해당 데이터를 사용하는 다른 부분에서 일관성을 유지하는 것이 어려울 수 있습니다.
프론트엔드에서 캐시를 사용할 수 있는 영역은 다음과 같습니다.
- 브라우저 캐시: 브라우저는 이미지, CSS, JavaScript 파일 등을 다운로드하여 로컬에 캐시로 저장합니다. 다음에 해당 파일이 필요한 경우 서버에서 다시 다운로드하지 않고 로컬에서 불러올 수 있습니다.
- 메모리 캐시: 자주 사용되는 데이터나 페이지의 일부를 메모리에 캐시하여 빠른 접근 속도를 제공할 수 있습니다. 예를 들어, SPA(Single Page Application)에서는 SPA에 필요한 데이터를 캐싱하여 초기 로딩 시간을 단축시킬 수 있습니다.
- CDN 캐시: CDN(Content Delivery Network)은 전 세계에 분산된 서버를 통해 웹 콘텐츠를 배포합니다. CDN은 파일을 캐시하여, 동일한 파일이 여러 번 다운로드되는 것을 방지하고, 전송 속도를 향상시킵니다. 따라서 CDN을 사용하는 경우, 캐시된 파일을 브라우저 캐시와 같은 방법으로 활용할 수 있습니다.
'CS' 카테고리의 다른 글
Position의 사용방법 (0) | 2023.03.30 |
---|---|
HTTP와 HTTP 메세지구조 (0) | 2023.03.30 |
프레임워크와 라이브러리의 차이점 (0) | 2023.03.29 |
Hoisting 과 TDZ란? (0) | 2023.03.28 |
parameter와 argument의 차이점 (0) | 2023.03.28 |