Client Side 에서 캐싱은 유용 하면서 굉장히 위험한 기술입니다. 서버 데이터를 fetching 해 데이터를 캐싱한 후, 해당 데이터를 확인할 때 만약 서버 상에서 데이터의 상태가 변경 되었다면, 사용자는 잘못된 데이터를 확인하게 되며, 개발자의 입장에서는 이는 데이터의 무결성을 해치는 경우로 인지될 수 있습니다.
브라우저에서 사용자가 최신 데이터를 바라봐야 하는 상황은 ?
근본적으로 화면을 보고 있을 때
페이지가 전환 될 때 (새로운 페이지를 마주 했을 때)
페이지 전환 없이 뭔가의 데이터를 요청할 때 (예를 들면 클릭 이벤트)
즉, 위 세 가지 경우를 제외하고는 데이터는 사용자 입장에서는 신선한(fresh) 상태가 아니어도 된다는 뜻입니다.