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

푸시 알람 대상 조회시 n+1 문제 방생중 #6

Open
qwlake opened this issue May 6, 2022 · 0 comments
Open

푸시 알람 대상 조회시 n+1 문제 방생중 #6

qwlake opened this issue May 6, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@qwlake
Copy link
Member

qwlake commented May 6, 2022

푸시 알림 대상 조회시 n + 1 문제 발생

해결방안

  1. FetchType.EAGER - 실제로 한꺼번에 조회 될지는 아직 모름
  2. Fetch join

푸시 알림 대상 조회시 N*M*K 문제(비효율적인 검색) 발생

사용자 수: N
사용자별 키워드 수: M
공지 수: K
푸시 알림 대상을 검색하기 위해 모든 공지에 대해 사용자별 키워드가 존재하는지 각각 검사하므로 시간복잡도가 NMK임

공지에 키워드 존재하는지 검사시

공지 타이틀에 대해 단순히 String.contains를 사용하므로 비효율적임
아래와 같이 개선 가능

select * from notice
where 1=1
and (title like '장학%' or title_reverse like '학장%')
and id > {lastPushedNoticeId}

@rave189

@qwlake qwlake added the enhancement New feature or request label May 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant