Skip to content

#168 [Feat] 투표 SSE 및 댓글 포인트 #171

Merged
HYH0804 merged 3 commits intodevfrom
feat/#168
Apr 14, 2026
Merged

#168 [Feat] 투표 SSE 및 댓글 포인트 #171
HYH0804 merged 3 commits intodevfrom
feat/#168

Conversation

@HYH0804
Copy link
Copy Markdown
Contributor

@HYH0804 HYH0804 commented Apr 14, 2026

#️ 연관된 이슈

📝 작업 내용

✨ Feat

내용 파일
관점 페이지 투표 % 실시간 SSE 구독 API 추가 VoteController.java, SseEmitterRegistry.java
SSE 투표 이벤트 리스너 및 이벤트 객체 추가 VoteEventListener.java, VoteUpdatedEvent.java
베스트 댓글 주간 포인트 정산 스케줄러 추가 (매주 월요일 00:00) BestCommentScheduler.java
스케줄러 로컬/개발 환경 테스트 API 추가 BestCommentSchedulerTestController.java

♻️ Refactor

내용 파일
비동기 처리 지원을 위한 AsyncConfig 설정 추가 AsyncConfig.java
BEST_COMMENT 크레딧 포인트 100 → 50 조정 CreditType.java

📌 공유 사항

  1. SSE 연결 타임아웃은 3분이며, 30초마다 heartbeat(ping)를 전송합니다.
  2. EventSource는 커스텀 헤더를 지원하지 않아 프론트에서 fetch + ReadableStream 방식으로 구현해야 합니다. (별도 문서 공유 예정)
  3. 베스트 댓글 정산 조건은 좋아요 10개 이상인 댓글 상위 3개입니다.
  4. 테스트 API(/api/test/scheduler/best-comment)는 local, dev 프로파일에서만 활성화됩니다.

✅ 체크리스트

  • Reviewer에 팀원들을 선택했나요?
  • Assignees에 본인을 선택했나요?
  • 컨벤션에 맞는 Type을 선택했나요?
  • Development에 이슈를 연동했나요?
  • Merge 하려는 브랜치가 올바르게 설정되어 있나요?
  • 컨벤션을 지키고 있나요?
  • 로컬에서 실행했을 때 에러가 발생하지 않나요?
  • 팀원들에게 PR 링크 공유를 했나요?

📸 스크린샷

💬 리뷰 요구사항

현준혁 and others added 3 commits April 13, 2026 11:13
@HYH0804 HYH0804 requested a review from jucheonsu April 14, 2026 10:43
@HYH0804 HYH0804 self-assigned this Apr 14, 2026
@HYH0804 HYH0804 requested review from Dante0922 and si-zero April 14, 2026 10:43
Copy link
Copy Markdown
Contributor

@si-zero si-zero left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

고생하셨습니다!

@HYH0804 HYH0804 merged commit e1a8846 into dev Apr 14, 2026
@HYH0804 HYH0804 deleted the feat/#168 branch April 14, 2026 10:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants