Thanks to visit codestin.com
Credit goes to github.com

Skip to content

bmcho/netflix-security

Repository files navigation

🎫 netflix security 프로젝트

netflix security는 구독형 멤버십 서비스를 구현하기 위해 Spring Boot 기반의 예제입니다. 본인에 초점을 맞추어 Spring Security 를 활용하고, 인증과 인가 기능을 구현하며, 기본적인 로그인 / 로그아웃 기능과 더불어 소셜 로그인을 포함하고있습니다..


🛠️ 기술 스택

  • SpringBoot 3.5.0
  • Java 17
  • SpringSecurity 6.x
  • SpringBatch 5.x
  • JWT (JSON Web Token)
  • OAuth 2.0 (카카오, 네이버 소셜 로그인)
  • Gradle 빌드
  • MySQL
  • Flyway
  • Docker

📁 프로젝트 구조

netflix-security
|-- netplix-adapters/
|   |-- adapter-http # 외부와의 통신을 담당하는 모듈
|   |-- adapter-persistence # DB 와의 통신을 담당하는 모듈
|   |-- adapter-redis # 레디스와의 통신을 담당하는 모듈
|-- netplix-apps/
|   |-- app-api # REST API 를 모아둔 모듈
|   |-- app-batch # 배치잡을 모아둔 모듈
|-- netplix-commons/ # 공통 모듈
|-- netplix-core/
|   |-- core-domain/ # 도메인 모델을 담당하는 모듈
|   |-- core-port/ # 외부와의 통신을 위한 인터페이스를 모아둔 모듈
|   |-- core-service/ # 비즈니스 로직을 구현하는 모듈
|   |-- core-usecase/ # 클라이언트에서 호출할 수 있는 인터페이스를 모아둔 모듈

🛠️ 컴포넌트(모듈)별 설명

  • netplix-core: 비즈니스 로직과 도메인 모델을 관리하는 기본 모듈
  • netplix-apps: 클라이언트가 호출할 수 있는 REST API 와 배치잡을 모아둔 모듈
  • netplix-adapters: HTTP Client, DB, Redis 등 외부 인프라와 통신하기 위한 모듈
  • netplix-commons: 공통으로 사용되는 유틸리티를 모아둔 모듈

⚙️ 테이블 구조

netflix_membership_erd.png

⚡ 영화 데이터 (TMDB - The Movie Database)

  • 영화 데이터를 가져오기 위해 TMDB 라는 곳을 활용

⚠️ 참고 사항

⚠️ 이 프로젝트는 학습 및 구조 설계 목적의 예제입니다. 실 서비스 적용 시에는 인증, 보안, 장애 복구, 데이터 일관성 등을 추가로 고려해야 합니다.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published