N+1문제(2)
-
[API 개발 고급] ❗지연 로딩과 조회 성능 최적화(V3) 3/4
간단한 주문 조회 V3: 엔티티를 DTO로 변환 (fetch join 사용 O) 결론 : fetch join으로 쿼리 1번 호출 V2에서 발생한 성능 문제(N+1)를 해결하기 위해서 페치 조인을 사용해보겠습니다. ❗ [중요] ❗ 실무에서 JPA 성능 문제의 90%는 N+1에서 발생하고 페치 조인은 성능 최적화를 위해서 자주 사용하기때문에 100% 이해하고 있어야 합니다. OrderSimpleApiController package jpabook.jpashop.api; /** * @XToOne 관계(ManyToOne, OneToOne에서의 성능최적화) * Order * Order -> Member * Order -> Delivery */ @RestController @RequiredArgsConstructo..
2022.05.25 -
[API 개발 고급] 지연 로딩과 조회 성능 최적화(V2) 2/4
간단한 주문 조회 V2: 엔티티를 DTO로 변환 (fetch join 사용 X) 결론 : 지연 로딩으로 쿼리 N번 호출 N + 1문제 해결 : fetch join 사용 → V3에서 설명 OrderSimpleApiController package jpabook.jpashop.api; /** * @XToOne 관계(ManyToOne, OneToOne에서의 성능최적화) * Order * Order -> Member * Order -> Delivery */ @RestController @RequiredArgsConstructor public class OrderSimpleApiController { private final OrderRepository orderRepository; @GetMapping("/ap..
2022.05.25