개발일지
5월 취업대비 - 캐시의 장단점 본문
캐시란 ?
캐시란 응답데이터, 값 등을 미리 복사해두는 임시 저장소 입니다.
웹 프론트엔드에서 필요한 데이터를 매번 서버에 요청해서 가져와 사용하는 것은 비효율적입니다.
서버에 부담을 줄 뿐더러 시간도 오래 걸립니다. 만약 같은 요청에 같은 데이터를 응답하는 요청이라면 데이터를 메모리에 저장해놓고 쓰는 것이 효율적일 것입니다.
캐시의 장점
성능 향상
이렇게 캐시에 저장해두고 데이터를 사용하면 데이터에 접근하는 시간이나 값을 계산하는 시간을 줄일 수 있어 성능 향상에 좋습니다
네트워크 병목 줄임
네트워크 작업보다 메모리 작업시간이 더 빠르기 때문
안정성 높임
캐싱된 값을 이용해서 서버의 부하를 줄여 안정성을 높일 수 있습니다. ( 서버가 다운되거나 장애가 발생해도 캐싱된 값을 사용하면 됨 ! )
캐시의 단점
일관성 문제
캐싱된 값이 업데이트가 되지 않은 상태로 오래 남아있다면 서버와 캐시 사이 데이터가 일치하지 않게 될 수 있어 적절한 관리가 필요합니다.
메모리 한계
보통 메모리에 저장되기 때문에 캐시에 저장된 값이 많을수록 메모리 사용량이 증가하여 성능에 문제가 생길 수 있습니다.
캐시 무효화
캐시가 적절한 시기에 무효화되지 않는다면, 캐싱된 값이 쓸모가 없어지기 때문에 메모리 낭비가 발생하게 됩니다.
프론트엔드에서 캐시 사용법
서버에서 요청해서 데이터를 가져오는 시간을 줄이는 방법으로 캐시를 사용하면 로딩속도 개선에 좋습니다.
브라우저 캐시
브라우저에서 이미 방문한 웹 페이지의 리소스를 캐시 해서 다음에 동일한 페이지를 방문했을 때, 리소스를 다시 다운로드하지 않도록 할 수 있습니다. 캐싱된 값을 이용하니 웹페이지의 로딩 속도가 빨라질 수 있습니다.
웹 스토리지
로컬 스토리지, 세션 스토리지 같은 웹 스토리지를 이용해서 웹 페이지에서 사용하는 데이터를 캐싱하고 사용할 수 있습니다.
해당 데이터가 필요할 때 스토리지에서 사용하면 되니 서버 리소스 사용을 줄일 수 있습니다.
CDN(Content Delivery Network)
전 세계에 분산된 서버를 이용해서 사용자가 접속한 지역과 가까운 서버로부터 웹 페이지의 리소스를 빠르게 제공합니다.
CDN은 자체적으로 캐싱하기 때문에 같은 요청에 대해 더 빠르게 응답을 할 수 있습니다.
reference.
웹 캐시(web cache) 종류 및 동작 순서.둉이.(2022.08).23.05검색.https://d2.naver.com/helloworld/59361
프론트엔드에서의 캐시.sero.lg.(2023.03).23.05검색.https://bbangson.tistory.com/87
'frontEnd > 기술면접' 카테고리의 다른 글
| 5월 취업대비 - position 의 사용 (0) | 2023.05.11 |
|---|---|
| 5월 취업대비 - HTTP와 메세지 구조 (0) | 2023.05.11 |
| 5월 취업대비 - 프레임워크와 라이브러리 (0) | 2023.05.10 |
| 5월 취업대비 - parameter와 argument의 차이 (0) | 2023.05.09 |
| 5월 취업대비 - Hoisting과 TDZ (0) | 2023.05.09 |