매일메일 CS 지식 : tanstack-query에서 stale time과 gc time의 차이점

kimsnmyng·2024년 12월 13일

Front-End CS

목록 보기
4/79

TanStack Query에서 stale timegc time은 데이터를 캐싱하고 관리하는 데 중요한 두 가지 설정이다.

Stale Time

Stale time은 데이터를 처음 가져온 후 그 데이터를 '신선한' 상태로 간주하는 시간을 말한다. 이 기간 동안에는 같은 데이터에 대한 추가적인 네트워크 요청이 일어나지 않고, 캐시에 저장된 데이터를 그대로 사용하게 된다. 예를 들어, stale time을 5분으로 설정하면, 데이터를 가져오고 나서 5분 동안은 이 데이터가 '신선하다'고 판단해서 네트워크 요청 없이 캐시된 데이터를 계속 사용한다. 기본값은 0으로 설정되어 있다.

GC Time

GC time은 데이터가 '오래된' 상태가 된 이후에도 캐시에 얼마 동안 남아 있을지를 정하는 시간이다. Stale time이 지나면 데이터는 '오래된' 상태가 되지만, gc time이 설정되어 있으면 지정된 시간 동안 여전히 캐시에서 그 데이터를 유지하게 된다. 예를 들어, gc time을 10분으로 설정하면, 데이터가 stale 상태가 된 이후 10분 동안 캐시에 남아 있다가 자동으로 삭제된다. TanStack Query에서 기본 gc time은 5분이다.

요약

  • Stale Time: 데이터를 처음 가져온 후 얼마 동안 네트워크 요청 없이 캐시된 데이터를 사용할지를 정하는 시간이다.
  • GC Time: 그 데이터가 오래된 상태가 된 후에도 캐시에 유지될 시간을 정하는 것이다.

이러한 설정을 통해 데이터를 더 효율적으로 관리하고, 불필요한 네트워크 요청을 줄이면서도 최신 데이터를 가져올 수 있도록 한다.

profile
안녕하세요 김선명입니다.

0개의 댓글