강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

이기영님의 프로필 이미지
이기영

작성한 질문수

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

질문있습니다.

작성

·

166

0

안녕하세요 김영한님, 소중한 강좌 잘 보고 제것으로 소화 중입니다.

강좌 중에 성능 최적화 하면서 쿼리 실행횟수 1+n+n 을 1+1로 끌어올리는 과정을 보면서 호기심이 들었습니다.

논리적으로 쿼리 횟수를 세는게 아니라

프로그래머틱(?)하게 db로 몇 번 쿼리를 쏘는지 확인하는 방법이 있을까요?

엉뚱한 질문일 수 있는데 시간 조금만 할애해주셔서 답변 주시면 감사하겠습니다.

답변 1

1

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 이기영님^^

여러가지 방법이 떠오르네요. ㅎㅎ

단순하게 DB로 몇 번 쿼리를 쏘는지는 딱 제공하는 기능은 없습니다.

대신에 프로그래머틱하게 해결할 수 있는 방법은 있습니다.

제가 아이디어를 드리자면, DataSource를 한번 래핑해서 count를 셀 수 있도록 구현하면 됩니다.

(아마 필요하면 ThreadLocal 이라는 것도 알아보셔야 할거에요. 쉬운 작업은 아니겠지만 여러가지 좋은 인사이트를 얻으실 수 있을꺼에요)

정답이라기 보다는 방향성을 찾아드리는 답변이 되었네요 ㅎㅎ

이기영님의 프로필 이미지
이기영

작성한 질문수

질문하기