즉시 로딩과 지연 로딩은 각각 언제 사용하면 좋은지 설명해주실 수 있을까요?

song yuheon·2023년 10월 19일
0

CS Study

목록 보기
22/50

즉시 로딩 이란?


  • 주 엔터티와 그에 연관된 데이터를 한 번의 쿼리로 함께 조회하는 방법이다

  • 장점

    • 연관된 데이터를 미리 로딩하기 때문에 후속 쿼리 없이 바로 사용 가능하다.
    • 사용하기 편리하고, 복잡한 로직 없이 데이터 접근 가능하다
  • 단점

    • 필요하지 않은 데이터도 로딩할 수 있어 데이터베이스 부담 증가할 수 있다.
    • 데이터 전송량이 많아질 수 있다.
  • 언제 사용하면 좋은가?

    • 항상 연관된 데이터를 함께 조회하고 활용하는 경우에 사용한다.
    • 연관된 데이터의 양이 많지 않아 성능 부담이 크지 않을 때 사용한다.

지연 로딩 이란?


  • 연관된 데이터를 실제로 사용될 때까지 로딩을 지연시키는 방법이다.

  • 장점

    • 필요한 경우에만 데이터 로딩이 이루어져 리소스를 효율적으로 활용한다.
    • 불필요한 데이터 전송을 최소화할 수 있다.
  • 단점

    • 실제 데이터에 접근하려 할 때 추가적인 쿼리가 발생한다.
    • 트랜잭션 밖에서의 데이터 접근 시 문제 발생 가능하다.
  • 언제 사용하면 좋은가?

    • 연관된 데이터의 사용 빈도가 낮거나 일부 상황에서만 필요한 경우나
      연관된 데이터의 양이 많아 즉시 로딩으로 인한 성능 부담이 예상될 때 사용한다.

profile
backend_Devloper

0개의 댓글