← 질문 목록
#138깊이 0

즉시 로딩을 기본값처럼 쓰면 왜 위험한가?

프레임워크심화성능인덱스·질의

사용하지 않는 연관관계까지 읽어 과조회가 생긴다. 조인이 보장되는 것도 아니어서 보조 쿼리가 반복되면 N+1과 메모리 낭비로 이어진다.

기준지연즉시
시점접근할 때주 객체 조회 때
통제용도별 선택항상 적용
위험세션 밖 접근과조회·N+1

기본 매핑은 지연 로딩으로 두고 유스케이스마다 fetch join, EntityGraph, 배치 조회를 선택하면 SQL 모양을 의도적으로 통제할 수 있다.

지연 프록시를 영속성 컨텍스트 밖에서 건드리면 초기화에 실패한다. 응답 직렬화가 연관관계를 순회하면 예기치 않은 쿼리도 발생한다.

컬렉션 fetch join은 중복 행을 만들고 페이징을 깨뜨릴 수 있다. 먼저 루트 식별자를 페이지로 구한 뒤 별도 조회하는 방식도 검토한다.

추천 꼬리질문

0/300

적은 내용은 AI 학습에 쓰일 수 있습니다. 이름이나 연락처는 넣지 말아 주세요.

관련 질문

즉시 로딩을 기본값처럼 쓰면 왜 위험한가?