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

[BE] 학교 식별자로 축제를 조회하는 쿼리에 페이징을 삭제하고 캐싱을 적용한다. #863

Open
seokjin8678 opened this issue Apr 16, 2024 · 0 comments · May be fixed by #867
Assignees
Labels
BE 백엔드에 관련된 작업 🏗️ 기능 기능 추가에 관한 작업 🙋‍♀️ 제안 제안에 관한 작업

Comments

@seokjin8678
Copy link
Collaborator

seokjin8678 commented Apr 16, 2024

✨ 세부 내용

#862 이슈에 남긴 내용에 대한 이슈입니다.

말 그대로 학교 식별자로 축제를 조회하는 쿼리에 캐싱을 적용하면 어떨까 합니다.

모든 축제에 대해 조회하는 것은 상당히 많은 데이터가 조회될 수 있습니다.(학교 * 축제 수)

하지만 보통의 대학 축제는 1년에 2번 열리기 때문에, 특수 케이스를 제외한다면 단일 학교에서 열리는 축제는 아무리 많이 쳐줘도 5개가 될까 말까 입니다.

게다가 축제 등록 또한 학교에서 축제 공지가 열려야 등록할 수 있기 때문에 실제 조회되는 축제는 1~2개가 전부일 것으로 예상됩니다.

따라서 지금 같은 경우 페이징을 통해 축제를 조회하는데, 오히려 페이징을 적용하는 것이 불필요하다고 생각됩니다.

또한 1~2개 축제를 조회하려고 매 번 쿼리를 날리는 것 보다, 메모리에 캐싱하여 제공하는 것이 더 좋다고 생각됩니다.
(개수가 워낙 적으니, 메모리에 데이터가 크게 차지될 것 같지도 않네요.)

종료된 축제의 경우 1년에 약 4개 정도의 축제가 개최된다고 넉넉하게 가정한다면.. 종료된 축제에도 페이징을 삭제하고 캐싱을 적용해도 좋을 것 같네요.
(종료된 축제 때문에 OOM이 발생할 가능성보다, 인구수 감소로 인해 페스타고 서비스가 종료될 가능성이 높아 보입니다. 😂😂😂)

⏰ 예상 소요 시간

4시간

@seokjin8678 seokjin8678 added BE 백엔드에 관련된 작업 🙋‍♀️ 제안 제안에 관한 작업 🏗️ 기능 기능 추가에 관한 작업 labels Apr 16, 2024
@seokjin8678 seokjin8678 self-assigned this Apr 16, 2024
seokjin8678 added a commit that referenced this issue Apr 18, 2024
seokjin8678 added a commit that referenced this issue Apr 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BE 백엔드에 관련된 작업 🏗️ 기능 기능 추가에 관한 작업 🙋‍♀️ 제안 제안에 관한 작업
Projects
Status: Todo
1 participant