one-day-one-meal / one-hour-one-meal

1 stars 0 forks source link

[Feat] Dto에 다른 Domain 정보가 담기는 Entity에 QueryDSL을 통한 Join 적용 #49

Open mobzzzzz opened 4 months ago

mobzzzzz commented 4 months ago

*# 기능 설명 지속적으로 Dto에 다른 Domain entity의 정보가 담긴다면 N+1 문제가 야기될 수 있습니다. 현재는 단순히 JPA가 지원하는 FetchType.LAZY에 의존하고 있지만 이 N+1 이슈를 해결하면 성능 향상을 노릴 수 있습니다. 해결법은 여러 가지 있을 테고 강의에서 배운걸 적용한다면 QueryDSL을 적극 활용한 Fetch join일 수도 있고 그렇습니다.

To-do

ETC

만약 QueryDSL을 사용한다면 대부분의 수정 / 추가 작업은 Repository만 변경되고 Service의 로직은 변경의 여파가 적은게 좋습니다. 서비스에서 추가 로직이 필요하지 않게끔 설계해보는 상상력을 발휘해보세요!

mobzzzzz commented 4 months ago

@1hyung Recipe 단건 조회를 할 때, 1번의 쿼리로 작성자의 정보가 Dto에 같이 담기게 도전해보세요!