FK
-
FK 없는 OneToOne 즉시 로딩 개선하기Spring Framework 2022. 6. 7. 00:08
1) 서론 이번 글에서는 업무 중 발견한 레거시 코드의 문제점을 개선한 것을 공유하고자 합니다. 다양한 로직에서 빈번히 조회되고 있던 엔티티가 있었는데요. 특별히 문제가 발생하지 않았기 때문에 실제로 발생하는 쿼리를 주의 깊게 보지 않았었습니다. 하지만 우연히 지나치게 많은 쿼리가 발생하고 있는 것을 발견했습니다. 최초의 설계 의도는 지연 로딩을 하고자 했던 것 같지만, 실제로는 즉시 로딩이 되고 있었습니다. N+1 문제가 발생하고 있었는데요. 적은 스펙의 IDC 환경에서 돌아가는 애플리케이션을 운영하는 입장에서 불필요한 쿼리 개선 하나하나가 소중한 상황입니다. 이러한 레거시 코드를 개선하고, 변경한 내용을 공유합니다. 2) DB schema 모든 테이블 구조 및 로직은 재현을 위해 임의로 만들었습니다..