Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor: 마이페이지 쿼리 성능 개선 #314

Open
yumzen opened this issue Jan 19, 2025 · 0 comments
Open

Refactor: 마이페이지 쿼리 성능 개선 #314

yumzen opened this issue Jan 19, 2025 · 0 comments
Assignees
Labels
🔨 Refactor 코드 리팩토링

Comments

@yumzen
Copy link
Member

yumzen commented Jan 19, 2025

🍒 IssueName

마이페이지 쿼리 성능 개선

📝 Description

마이페이지 쿼리 성능 개선

🌱 Todo

1️⃣ Member 조회 시 findByEmail, findMemberWithTechStacks 메서드에서 쿼리가 추가적으로 발생하고 있는 문제. 이 쿼리에서도 묵시적 조인이 일어나고 있음을 확인하였습니다.
Image
👉 memberImage에 대해 lazy loading이 걸려 있기 때문에 발생하고 있는 것으로 판단하여 fetch join을 이용해 하나의 쿼리로 가져올 수 있게 하였습니다.
Image

2️⃣ 프로필 이미지 url만 return해주면 되는 쿼리에서 member의 모든 쿼리를 반환하는 문제를 확인하였습니다.
Image
👉 member의 imageUrl 필드만 조회할 수 있도록 쿼리를 수정하였습니다.
Image

3️⃣ 팔로우/팔로잉과 함께 멤버 조회 시 (findByIdWithAndFollowersAndFollowings) lazy로딩으로 설정된 memberImage 테이블에 대한 쿼리가 3개가 추가적으로 발생함을 확인하였습니다.
Image
👉 findByIdWithAndFollowersAndFollowings 쿼리에서 memberImage를 fetch join으로 한번에 가져올 수 있도록 설정했습니다. 이 문제가 findByIdWithFollowings, findByIdWithFollowers쿼리에서도 동일하게 발생하여 동일한 방식으로 해결했습니다.
Image

@yumzen yumzen self-assigned this Jan 19, 2025
@yumzen yumzen added the 🔨 Refactor 코드 리팩토링 label Jan 19, 2025
yumzen added a commit that referenced this issue Jan 20, 2025
yumzen added a commit that referenced this issue Jan 20, 2025
yumzen added a commit that referenced this issue Jan 20, 2025
yumzen added a commit that referenced this issue Jan 20, 2025
Refactor: 마이페이지 쿼리 최적화 및 요청 사항 반영
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🔨 Refactor 코드 리팩토링
Projects
None yet
Development

No branches or pull requests

1 participant