1. 인기순 처리 로직
인기 스터디 기준을 정해야 할 것 같아요
만약 누적 조회수로 처리가 된다면, 신규 스터디 카드가 노출될 가능성이 적어지기 때문에 따로 기간을 정하는 게 좋을 것 같습니다
월~일 또는 현재 날짜 기준 7일 이내 등등
처리 로직 후보 1
- 매일 Scheduler로 정해진 시간에 한 번 계산하여 Redis에 인기 스터디 갱신
- 특징
- 실시간 반영 X
- 인기 스터디 갱신에 대해 큰 부담 없이 바로 Redis에서 가져와서 조회 가능
처리 로직 후보 2
- Redis - SortedSet 활용하여 실시간 점수 반영
- 흐름 예시
- 인기 게시글은 5개가 보여진다.
- sorted (key→ 20250225, 10, studyId(pk) 1)
- sorted (key→ data::20250225::articleId::{articleId}:, 12, studyId(pk) 2)
- sorted (key→ 20250225, 13, studyId(pk) 3)
- sorted (key→ 20250225, 16, studyId(pk) 4)
- sorted (key→ 20250225, 16, studyId(pk) 5)
- sorted (key→ 20250225, 23, studyId(pk) 6)
- 1 게시글 하나가 작성이 됐다. → sorted 로 기록이됨
- 2 → sorted 기록이됨
- 3 →
- 4 →
- 5 →
- 6 → 조회가 발생: 6번째 게시글의 인기 점수 (조회수 + 좋아요 + 지원자 수)
2. 조회수 중복 처리 로직
인기순에 조회수가 반영된다면 조회수 중복 처리가 필수라고 생각하는데, 조회수 중복 방지 로직은 다양하기 때문에 어떤 걸 활용할지 고민해볼 필요가 있을 것 같아요
- 적용 한다면 Redis 사용
- 꼭 필요한지에 대해서는 전체 회의에서 다루기
3. 검색 활용 방안
피그마에서 현재 검색 칸은 제목, 글 내용을 검색 가능하다고 나온다.
스터디의 태그로도 검색이 가능한지, 검색 기능이 단순히 제목과 글 내용에 정확히 같은 문자열이 포함되는 지의 여부로 필터링 되는지 등 세부적인 기획 필요
- 기본 기능 개발 완료 후, 리팩토링 우선 순위 1위
- 검색 단어 → 제목과 글 내용에 포함(like%)된 스터디 게시글 반환
4. 스터디의 관리에 대한 궁금증