Repository navigation
4월 16일
juyoung edited this page Apr 16, 2024
·
2 revisions
- sequelize 영속성 컨텍스트
- memory-cache 캐싱 사용
- 전체 웹툰 조회 시 북마크 where user 조회
- 완전 깜빡하고 웹툰과 연관된 북마크 값만 가져왔음;;
- 게다가 삼항연산자 쓰면서
bookmark != null ? true : false뭐냐;; 멍청한 거 자랑이냐;; 바로 수정
- 북마크 조회랑 웹툰 조회가 response도 같고 param 값도 같아서 그냥 service, repository 함수 같이 쓰고 if문으로 조건만 나눴는데 유지보수 측면에선 별로려나? 하지만 의미없이 코드 반복해서 쓰는 게 더 싫은 걸...
- 조회 -> pagination
- JPA처럼 영속성 컨텍스트 되겠거니 했는데 매번 쿼리가 날라가네;;
- query 결과 캐싱하면 되겠거니 했는데 생각보다 고려할 게 있어서 헤맸다.
- 새로운 웹툰을 등록한 경우에는 당연히 모든 query 캐싱 지워야 하고, 근데 북마크의 경우는 내 캐싱만 지워야 되니까 key값에 따라 지우고
- 근데 이걸 멍청하게 웹툰 및 북마크 save가 생기면 그냥 해당 캐싱 함수를 호출하면 되는데 sequelize에 있는 afterCreate hook에 꽂혀서 그걸로 했다가 왜 북마크가 생성돼서 캐싱 지우는 함수 호출하는데 북마크 컬럼값만큼 호출되지? 이러고 있었음;; -> 당연함 그게 hook이니까;;
- pagination은 sequelize에 findCountAll 메소드가 있어서 그거 쓰고 반환했다. DTO 하나 더 만듦
- 없으면 직접 쿼리 써서 조회해야 하나 싶었는데 뭐 다 있군
- 그리고 너무 생각이 단순하다... 북마크 조회한다고 말 그대로 웹툰에 연관된 북마크 값만 가져오다니;;
- kakao OAuth 빨리 붙여버릴까 그냥... 근데 테스트하기 귀찮아서...
- 근데 sequelize로 다 할 거면 drizzle 왜 추가했냐; (편하긴 하지만)
- 웹툰 및 북마크 조회
- response에 북마크 추가
- graphQL 추가
- 쿼리 결과 캐싱
- pagination
- 웹툰 상세 보기
- platform join
- ws
- bookmark
- alarm(update)
- latest(update)
- ElasticSearch
- 웹툰 title / author 검색(multi_match)
- SSE(alarm)