Skip to content

Queuing-org/backend

Repository files navigation

Queuing Backend

Spring Boot 4 / Java 21 기반의 실시간 DJing·음악 공유 백엔드다.

루트 구조

  • src/main/java/queuing/core
    • global 공통 설정, 예외, 보안, 응답, Redis/JPA 인프라
    • room 방/큐/실시간 재생 도메인
    • user 사용자 조회/인증/프로필 도메인
    • friend 친구 관계 도메인
  • src/main/resources
    • config 프로필별 설정
    • db/migration Flyway 마이그레이션
    • templates, static, scripts 런타임 리소스
  • src/test/java
    • 현재 room 중심 회귀/통합 테스트
  • docs
    • frontend-room-websocket-guide.md 프론트 연동 가이드
    • queue-feature-execution-plan.md 큐 저장 구조 정리 문서
    • youtube-queue-integration.md YouTube 메타데이터 연동 메모
  • container
    • 로컬 MariaDB/Redis 컨테이너 리소스

핵심 구조 원칙

  • room queue의 source of truth는 Redis가 아니라 RDB 다.
  • Redis는 참가자 / 세션 / playback / track-end scheduling 같은 세션성 최신 상태만 담당한다.
  • room 도메인은 application / domain / infrastructure / presentation 계층으로 분리한다.

자주 쓰는 명령

./gradlew test
./gradlew build
./gradlew test --tests '*RoomQueueCommandServicePersistenceTest'
./gradlew test --tests '*RoomSocketServiceTest'

Contributors