Skip to content

[BE] 인기 해시태그 조회 기능 성능 측정 #614

@YehyeokBang

Description

@YehyeokBang

기능 설명

인기 해시태그는 UI상 가장 잘보이는 위치고, 모두의 보따리에 접속하면 꼭 호출되는 기능입니다.

클라이언트가 화면 전환 시마다 해당 API를 요청한다고 가정하면, 전체 트래픽 중 상당 비율을 차지하게 됩니다.
특히 이 API는 검색이나 생성 같은 추가 액션 없이 자동 호출되는 특성 때문에 부하의 주요 원인이 될 가능성이 높습니다.

문제 인식

현재 인기 해시태그는 매 요청마다 집계 쿼리를 수행하고 있습니다.
데이터가 누적될수록 쿼리 부하가 커지고, 결과적으로 응답 지연 및 DB 병목이 발생할 위험이 있습니다.

어떻게 할 것인가?

우선 실제 쿼리 부하를 검증하여 문제를 수치적으로 확인할 예정입니다.

이후 병목이 확인된다면, 아래와 같은 방법을 고민하고 적용해볼 예정입니다.

  • 캐싱 도입: 자주 조회되는 집계 결과를 일정 시간 동안 메모리에 저장
  • 반정규화: 실시간 집계 대신 사전 계산된 데이터를 별도 컬럼/테이블에 유지
  • 집계 테이블 도입: 주기적으로 갱신되는 통계 테이블을 활용하여 조회 부하 완화

기대 효과

  • 모두의 보따리 화면 진입 시 트래픽 급증 상황에서도 안정적인 응답 유지

추가 맥락

No response

체크리스트

  • 기존에 제안된 유사한 기능이 없는지 확인했습니다.

Metadata

Metadata

Assignees

Type

Projects

Status

In Progress

Relationships

None yet

Development

No branches or pull requests

Issue actions