🏆 카카오 클라우드 스쿨 우수 프로젝트 수상
👉 본 레포지토리는 하이브리드 클라우드 아키텍처의 Domain(On-Premise) 단을 담당합니다.
- 온프레미스 환경에서 로컬 DB에 직접 연결
- 클라우드 서비스(MusicQ-Service) 요청을 받아 쿼리를 수행 후 결과만 전달
- DB 보안성 확보와 클라우드 경제성 동시 충족
[Service (Cloud)] <----> [Domain (On-Premise)] <----> [Local DB]
- Local DB: 보안이 중요한 원천 데이터 저장
- Domain: 클라우드 요청 → 쿼리 실행 → 결과 반환
- Service: 사용자와 직접 연결되는 클라우드 레이어
- 클라우드 서비스 → Domain 요청
GET /domain/query?sql=SELECT * FROM users WHERE id=1
- Domain 서버 → 로컬 DB 실행
SELECT * FROM users WHERE id=1;- Domain → Service 응답
{
"id": 1,
"name": "홍길동",
"email": "[email protected]"
}- spring-boot-starter-web → REST API 제공
- spring-boot-starter-data-jpa → ORM 기반 DB 연동
- spring-boot-starter-validation → 요청 데이터 검증
- spring-boot-devtools → 로컬 개발 편의성
- mariadb-java-client → MariaDB 드라이버
- json
- lombok
- querydsl
git clone https://github.com/kkkwp/MusicQ-Domain.git
cd MusicQ-Domain
./gradlew bootRun- 기본 포트: 8081
- DB 연결 정보: src/main/resources/application.yml 수정
- GitHub Actions → DockerHub 이미지 빌드/배포
- ArgoCD가 Manifest Repo Webhook 감지 → Kubernetes 자동 배포
👉 전체 서비스 아키텍처, 위키, 컨벤션 등은 팀 레포지토리를 참고해주세요.
