ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 캐시(Cache)에 대하여 설명해주세요.
    CS지식 모음 2023. 3. 29. 13:56

    제가 아는 캐시는 $ 캐시밖에 없습니다..

     

     

     

    그래서 이번에는 캐시에 대하여 공부해봤습니다.

     

    캐시 란...?

    데이터나 자원을 미리 저장해놓는 임시 저장소 입니다.

    일반적으로 캐시는 프로세서나 애플리케이션 내부에서 동작하며, 빠른 속도로 접근할 수 있고, 시스템의 성능을 개선할 수 있습니다.

    캐시는 데이터의 일부만 저장하고 저장된 데이터는 일정 시간이 지나면 만료 됩니다.

     

     

     

    캐시의 장,단점에 대해 설명해주세요.

    장점

    접근 속도가 빠릅니다.

    - 캐시에 저장된 데이터나 자원은 빠른 접근이 가능하기 때문에, 매번 원본 데이터나 자원에 접근하는 것 보다 더욱 빠른 속도로 데이터나 자원에 접근할 수 있습니다.

     

    시스템 성능이 개선됩니다.

    - 빠른 접근 속도로 인해 시스템의 처리량이 개선되고, 더 많은 요청을 처리할 수 있습니다.

     

    대역폭(Bandwidth)을 절약할 수 있습니다.

    - 캐시에 저장된 데이터나 자원은 원본 데이터나 자원에 접근할 필요가 없으므로, 대역폭을 절약할 수 있습니다.

     

    대역폭이란?

    - 네트워크나 컴퓨터 시스템에서 전송 가능한 데이터 양의 총량. 초당 전송 가능한 양을 나타내는 Mbps, 또는 Gbps단위로 표시됩니다.

     

    단점

    캐시 크기에 제한이 있습니다.

    - 캐시에 저장할 수 있는 데이터나 자원의 양에는 한계가 있으므로, 적절한 크기로 유지하는 것이 중요합니다.

    - 캐시 압축을 할 수도 있습니다. 압축된 데이터는 해제시까지 일시적으로 처리성능이 떨어질 수 있지만 캐시 용량을 절약할 수 있습니다.

    - 캐시 분산을 사용하면 전체 캐시 용량을 늘리거나, 각 서버의 캐시 용량을 적절히 설정하여 캐시 용량의 한계를 극복 할 수 있습니다.

    - 다만 캐시 용량의 한계를 초과하는 경우 다른 대안을 고려해야 할 수 있습니다.

     

    캐시가 최신 데이터나 자원을 보장하지 않습니다.

    - 캐시에 저장된 데이터나 자원은 일정 시간이 지나면 만료되거나, 원본 데이터나 자원이 변경되면 갱신되어야 합니다.

    - 캐시의 유효기간은 일반적으로 TTL(Time-To-Live)라는 개념으로 표현하는데, TTL이 만료되면 캐시는 갱신되어야 합니다.

       TTL은 적절한 시간으로 설정해야 하며, 데이터나 자원의 업데이트 주기와 맞춰서 설정하는 것이 좋습니다.

    - 이러한 단점을 극복하기 위해서는 캐시 무효화(Invalidation) 적극적인 캐싱(Proactive Caching) 등을 통해 일관성을 유지할 수 있습니다.

     

     

     

    프론트엔드에서 캐시를 사용할 수 있는 영역을 2~3가지 제시해주세요.

    자주 쓰이는 2가지만 가져와봤습니다.

     

    브라우저 캐시

    - 이미지,스크립트,스타일시트 등의 정적 파일을 캐시하여 같은 페이지에 다시 접속할 때 파일을 다시 다운로드하지 않아도 되서 성능 향상에 효과적입니다.

     

    CDN(Content Delivery Network)

    - 전 세계에 분산된 서버를 이용하여 콘텐츠를 전송하는 서비스로 CDN은 캐시를 이용하여 콘텐츠를 더 빠르게 전송하고, 더 적은 대역폭을 사용합니다. 정적 파일이나 미디어 파일을 캐시할 수 있습니다.

     

     

     

    아 캐시..뭔가 어렵네요.

    스토리지랑 비슷한 것 같아서 다음에는 스토리지를 한번 공부해봐야 겠습니다.

Designed by Tistory.