Skip to content

Conversation

@yongmin01
Copy link
Contributor

@yongmin01 yongmin01 commented Apr 18, 2025

📢 기능 설명

  1. react-qeury를 사용해서 레크레이션 탭의 검색 결과를 캐싱합니다.

그런데.. 문득 이걸 캐싱하는게 맞을까라는 생각이 드네요..🤔
"현재 페이지, 정렬 기준, 쿼리 스트링"에 따라서 검색 결과가 매번 달라져서 검색할 때마다 캐시가 겁나 쌓이는데 이게 과연 좋을까..?
스크린샷 2025-04-18 오후 6 41 52
좋다면.. staleTime과 gcTime을 몇으로 설정하는게 좋을지?
함께 논의해봐여~

++ 메인페이지 데이터들을 캐싱하는건 확실히 성능에 도움될거 같아서 작업 예정입니당(작업 완료)


5/22 pr 참고 사항

  1. 레크레이션 검색 데이터 캐싱되게 해놨는데 문제가 있음.. 즐겨찾기하면 동기화를 위해 즉시 쿼리를 무효화시키고 즐찾이 반영된 데이터가 새로 받아와지기 때문에 인기순 정렬되어 있을 때 즐찾을 누르자마자 검색 결과에서 위치가 바뀝니다. ux적으로 안 좋은 것 같은데 아직 해결책을 찾지 못했어요..

  2. 🐛 초기 검색 이후 추가로 조건을 설정한 뒤 "필터 적용" 클릭하지 않고 페이네이션 이동이나 정렬을 바꿨을 때 적용하지 않은 조건이 남아있는 버그가 있었습니다. page, sortBy 바뀔 때마다 현재 state랑 쿼리스트링 비교해서 다른 경우에 현재 state를 쿼리스트링에 맞춰서 동기화시켰습니다. 코드가 좀 복잡한거 같은데 더 좋은 방법 있으면 공유해주십시오 🙏
    83c823e

  3. 검색 조건 수정해서 재검색 하면 페이지네이션 1로 초기화되게 수정했습니다. 그런데 저렇게하면 리렌더링이 너무 많이 일어나서 page도 쿼리스트링에 포함시키는 방향으로 수정할지 고민중입니다. 이것도 의견 부탁드려요. 그리고 상세페이지 갔다가 돌아올 때 페이지 유지시키게 하는 것도 그렇게 하면 구현 쉬울 것 같음..!
    c90ded6


🔗 연결된 issue

연결된 issue를 자동으로 닫기 위해 아래 {이슈넘버}를 입력해주세요.

close #157


🩷 Approve 하기 전 확인해주세요!

  • 캐싱.. 해? 말어?
  • staleTime, gcTime 몇으로 설정하지?
  • merge 전에 devtools 지우기~

✅ 체크리스트

  • PR 제목 규칙 잘 지켰는가?
  • 추가/수정사항을 설명하였는가?
  • 이슈넘버를 적었는가?
  • Approve 하기 전 확인 사항 체크했는가?

@yongmin01 yongmin01 self-assigned this Apr 18, 2025
@yongmin01 yongmin01 linked an issue Apr 18, 2025 that may be closed by this pull request
1 task
@yongmin01 yongmin01 changed the title (#157)refactor/searchlist caching ♻️ [Refactor] 레크레이션 검색 결과 캐싱 Apr 18, 2025
@yongmin01 yongmin01 changed the title ♻️ [Refactor] 레크레이션 검색 결과 캐싱 ♻️ [Refactor]: 레크레이션 검색 결과 캐싱 Apr 18, 2025
@yongmin01 yongmin01 changed the title ♻️ [Refactor]: 레크레이션 검색 결과 캐싱 ✨ [Feat]: 레크레이션 검색 결과 캐싱 Apr 18, 2025
@eomgerm
Copy link
Contributor

eomgerm commented Apr 21, 2025

음 좋아보이긴하네요... 혹시 아이디를 기준으로 캐싱 데이터를 구별하는 건 어렵나요?

yongmin01 and others added 21 commits April 25, 2025 00:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[refactor] 레크레이션 검색 결과 캐싱

3 participants