강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

gogoDevelop님의 프로필 이미지
gogoDevelop

작성한 질문수

6주 완성! 백엔드 이력서 차별화 전략 4가지 - 똑같은 이력서 속에서 돋보이는 법

6-4. 캐싱(Caching)의 개념 3

cache eviction 관련 질문입니다.

해결된 질문

작성

·

47

0

image.png

위의 내용과 같이 언제, 어떻게 만료 시킬 지에 대한 만료 방식을 cache eviction이라고 해주셨는데 검색해보니까 내용 상의 차이가 있다는 것을 알게 됐습니다.

 

TTL, TTI와 같은 특정 시간, 점유 시간에 대해 발동되어 cache expiration으로 정의가 됐습니다.

 

반면 cache eviction은 메모리 공간이 부족한 경우 발동되어 LRU, LFU, FIFO 등으로 구분됐습니다.

결국 둘 다 캐시 삭제 기법이긴 하나, 트리거 조건에 차이가 있었습니다. 면접에서 eviction 관련 질문을 받는다면 둘을 혼용해도 무방할까요?

 

답변 2

0

딩코딩코님의 프로필 이미지
딩코딩코
지식공유자

안녕하세요 gogoDevelop 님!!

말씀해주신대로, 제가 단어를 혼용해서 잘못 표현한 것 같습니다 __

이 부분은 교재와 강의 영상에서 편집하도록 하겠습니다 개선하게 해주셔서 감사드립니다!!

면접관이 "cache eviction"이라고 물으면 LRU, LFU 등 메모리 부족 상황에서의 제거 정책을 중심으로 답변하고, 만약 TTL 등 시간 기반 만료를 언급하고 싶다면 "cache expiration과 함께 고려해야 할 부분이..."라고 구분해서 설명하시는게 더 좋을 것 같습니다!!

항상 좋은 질문 감사합니다!! 😍

0

안녕하세요, 인프런 AI 인턴입니다. gogoDevelop님.

캐시 eviction과 expiration 개념의 차이에 대한 질문을 주셨군요. 각 용어는 캐시 관리의 중요한 부분을 차지하며, 정확한 개념 이해가 필요합니다.

캐시 관리 개념:

  1. 캐시 Expiration:

    • TTL (Time to Live): 캐시 데이터가 생성된 시점에서 얼마동안 유효한지를 결정합니다.
    • TTI (Time to Idle): 캐시 항목이 마지막으로 액세스된 시점부터 얼마의 시간 동안 유지될지를 결정합니다.
    • 주로 데이터를 시간 기반으로 만료시키는 방법으로 정의됩니다.
  2. 캐시 Eviction:

    • 캐시의 공간이 제한적이기 때문에 메모리가 부족할 경우 어떤 데이터를 삭제할지를 결정하는 정책입니다.
    • 대표적인 알고리즘에는 LRU (Least Recently Used), LFU (Least Frequently Used), FIFO (First In, First Out) 등이 있습니다.

면접 시 대처 방법:

  • 이 두 개념은 캐시 데이터의 만료와 삭제를 처리하는 다른 접근 방식입니다. 캐시 expiration은 주로 시간 기반으로 삭제를 결정하고, eviction은 메모리 제한에 의해 발생합니다.
  • 면접에서 이러한 용어를 혼용하지 않는 것이 좋습니다. 각각의 개념을 구분하여 설명하는 것이 면접관에게 지식을 정확하게 전달하는 데 도움이 됩니다.
  • 예를 들어, “캐시 데이터는 TTL을 통해 관리되며, 메모리가 가득 찰 경우에는 LRU 알고리즘을 사용하여 데이터를 evict합니다.“라고 설명할 수 있습니다.

관련하여 참고할 수 있는 게시물 링크를 확인해 보시기 바랍니다:

개념의 명확한 구분과 설명은 백엔드 실무와 면접에서 큰 도움이 되므로, 잘 숙지하시면 경쟁력 있는 포인트가 될 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

gogoDevelop님의 프로필 이미지
gogoDevelop

작성한 질문수

질문하기