일상

일상이에요

오잎 클로버 2022. 3. 5. 20:48
728x90

요즘 JPA를 공부를 하다보니 머리가 어질어질합니다.

JPA가 어느정도 익숙해질 때 쯤 되니, 튜닝, 그리고 더 세세한 사항들까지 알아보다보니, 끝도 없는 것 같습니다.

Batch Size, IN 쿼리, 즉시 로딩, 지연 로딩, fetch & 조인 등등 ...

위와 같은 내용들을 보고 나니 현타가 찾아왔습니다..

 

그제서야 Spring을 왜 다들 어려워하는 지 알 것 같더라고요...

그리고 현재 프로젝트를 실행했을 때 발생하는 쿼리들을 보니...

Hibernate: 
    select
        member0_.id as id1_2_,
        member0_.email as email2_2_,
        member0_.name as name3_2_,
        member0_.nickname as nickname4_2_,
        member0_.password as password5_2_,
        member0_.provider as provider6_2_,
        member0_.salt as salt7_2_ 
    from
        Member member0_ 
    where
        member0_.email=?
Hibernate: 
    select
        refreshtok0_.member_id as member_i2_4_0_,
        refreshtok0_.token as token1_4_0_ 
    from
        RefreshToken refreshtok0_ 
    where
        refreshtok0_.member_id=?
Hibernate: 
    insert 
    into
        RefreshToken
        (token, member_id) 
    values
        (?, ?)

일단 제정신은 아니라는 것을 알았습니다. 그리고 시간도 오래 걸리고...

그래서 N+1문제를 해결하고 페이징 처리를 알아보니...

넘치고 넘치는 자료들...

우선 해당 내용은 DB와 관련되어 있어 가장 많이 사용하는 부분이라고 생각이 들어 공부를 차근차근하고자합니다.

응답 속도 개선 등 역시 공부해서 적용하면 좋겠지만, DB가 가장 속도 개선에 중요하고, 가장 내용도 많고, 방법도 많고,

모르면 탈 나는... JPA 관련 글들을 읽으며 차근차근 해결해나가고자 합니다.

 

Spring으로 웹 개발하신 많은 개발자 분들을 다시 한 번 존경하게 되는 계기가 되었습니다.

Spring 공부하시는 분들 파이팅입니다...

 

 

이상입니다.

'일상' 카테고리의 다른 글

일상이에요  (0) 2022.04.18
일상이에요  (0) 2022.03.27
일상이에요  (1) 2022.02.27
일상이에요  (0) 2022.02.12
일상이에요  (0) 2022.01.08