본문 바로가기
Web

CS Cache(캐시)

by 차가운개발 2024. 10. 10.

 

캐시는 데이터나 연산 결과를 임시로 저장해 두고, 동일한 데이터를 요청할 대 더 빠르게 제공하는 기술이다. 주로 메모리와 같은 빠른 저장소를 사용하여 데이터를 임시로 저장하므로 비교적 느린 작업을 반복적으로 수행하는 대신 캐시된 데이터를 재사용할 수 있다.

 

ㅇ 캐시의 방식

  • 메모리 캐시(In-Memory Cache)
    메모리에 자주 사용하는 데이터를 저장하여 빠르게 접근할 수 있다. Redis나 Memcached 같은 인메모리 데이터베이스가 사용된다.
  • 웹 브라우저 캐시(Browser Cache)
    웹 브라우저는 방문한 페이지나 자원을 캐시에 저장해두고 같은 페이지를 다시 방문할 때 서버에서 다시 다운로드하지 않고 캐시된 자원을 사용한다.
  • 데이터베이스 캐시(Database Cache)
    쿼리 결과를 캐싱하여 동일한 쿼리가 반복될 때 데이터베이스에 접근하는 시간을 줄일 수 있다. 데이터베이스의 부하를 줄이고 응답속도를 향상시킬 수 있다.
  • 분산 캐시(Distribute Cache)
    여러 서버에서 공통으로 사용하는 캐시로 시스템이 분산되어 있을 때 전체적으로 캐시된 데이터를 공유할 수 있다. 대규모 시스템에서 성능 최적화를 위해 사용된다.

 

ㅇ 캐시의 장단점

장점

  • 속도 향상
    자주 사용하는 데이터를 캐시하면 접근 시간을 줄여 성능을 크게 향상 시킬 수 있다.
  • 서버 부하 감소
    동일한 요청에 대해 캐시된 데이터를 제공함으로 서버의 처리 부하를 줄일 수 있다.

단점

  • 데이터 불일치
    캐시된 데이터는 시간이 지나면 원본 데이터와 다를 수 있어 이를 해결하기 위한 캐시 무효화 전략이 필요하다.
  • 메모리 사용량 증가
    캐시는 메모리를 사용하기 때문에 크기가 크면 시스템 자원을 과도하게 소비할 수 있다.

'Web' 카테고리의 다른 글

[Web] Web과 WAS의 차이  (0) 2024.11.27
[Web] REST API  (1) 2024.11.27
[Web] HTTP Status Code  (0) 2024.11.27
[Web] HTTP Request Method  (1) 2024.11.27
[Web] 쿠키와 세션의 차이  (1) 2024.10.10