N+1 문제 해결로 쿼리 성능 개선하기

2022. 8. 11. 16:26·Stack/Spring

jmeter 테스트 표본

위사진처럼 연관관계가 있는 테이블을

이렇게 조회를 했을때

사용하지는 않지만 연관관계가 있는 테이블을 모두 조회하게 되므로 비교적 지연이 걸리게된다

적용 이전의 지연시간이었다 



일단 @Many to One/ @One To Many 연관관계 테이블에서의 어노테이션에

Fetch Type 을 Lazy로 잡아준다

Fetch.lazy 는 지연로딩이라는 의미이다 이렇게 실행을 하게되면
Post 조회시 User에 대한 메소드가 필요가 없어서

하이버네이트가 join 또한 하지 않고, post에 대한 select 쿼리문만 날린 것을 볼 수 있다!

Fetch Join 사용

batch.fetch 사용

개선결과
추후 작성예정

저작자표시 (새창열림)

'Stack > Spring' 카테고리의 다른 글

Spring AOP로 API 성능 측정하기 - 프로젝트 예제와 함께  (1) 2026.01.21
스프링부트 DB 작동 방식과 원리  (1) 2026.01.21
JPA 특정 엔티티 삭제시 연관된 엔티티도 함께 삭제하기  (0) 2022.07.12
(CI/CD) Codedeploy 배포 GitAction 에 GitIgnore 파일 적용하는법  (0) 2022.07.12
SQL 관계 데이터 베이스 삭제 시 참조키 관련 주의 사항  (0) 2022.07.12
'Stack/Spring' 카테고리의 다른 글
  • Spring AOP로 API 성능 측정하기 - 프로젝트 예제와 함께
  • 스프링부트 DB 작동 방식과 원리
  • JPA 특정 엔티티 삭제시 연관된 엔티티도 함께 삭제하기
  • (CI/CD) Codedeploy 배포 GitAction 에 GitIgnore 파일 적용하는법
김코딩개발자
김코딩개발자
  • 김코딩개발자
    김코딩의 개발로그
    김코딩개발자
  • 전체
    오늘
    어제
    • 분류 전체보기 (65)
      • 개발이야기 (16)
        • 개발로그 (5)
        • 항해일지 (11)
      • Develop (0)
      • Life (0)
      • Stack (29)
        • C++ (6)
        • Ext.js (1)
        • Spring (18)
        • Java (2)
        • JavaScript (2)
      • TechTrend (0)
      • TechKnowledge (20)
        • CS관련지식 (9)
        • 알고리즘 (9)
        • 네트워크 (2)
  • 블로그 메뉴

    • 홈
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    올바른 괄호
    프로그래머스 LV2
    ip통신
    프로그래머스 멀리뛰기
    데이터 용량단위
    Spring AOP
    지연수치표
    서비스 경험
    DB원리
    자바스크립트입문
    괄호문제
    데이터 마이그레이션
    네트워크
    OSI 3계층
    프로그래머스
    괄호 회전하기
    시간복잡도
    관점지향프로그래밍
    개발일기
    동적계획법
    개발입문
    SpringBoot DB
    서비스경험
    java Stack
    대규모 트래픽
    테스트주도개발
    osi 2계층
    직장인
    응답지연값
    lan 통신
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
김코딩개발자
N+1 문제 해결로 쿼리 성능 개선하기
상단으로

티스토리툴바