Backend
Algorithm
Project
codesche’s blog
/
Education
/
PT 이용권 관리 서비스
/
PT 이용권 관리 서비스
Backend
Algorithm
Project
codesche’s blog
/
Education
/
PT 이용권 관리 서비스
/
PT 이용권 관리 서비스
Share
Backend
Algorithm
Project
PT 이용권 관리 서비스
PT 이용권 관리 서비스
Search
Batch 어떤 작업인가?
•
실시간이 아닌 일괄적으로 데이터를 처리하는 작업
•
스프링 배치는 스케쥴러가 아니다!
•
서비스 구조도
이용권 시스템 이해하기
•
요구사항 유형
•
요구사항 통계
•
이용권 서비스 요구사항 Features
•
구조
이용권 서비스 요구사항 이해하기
•
N개의 체육관을 기준으로 구성
•
개발 시 1개의 체육관을 기준으로 단순화
•
데이터 설계 테이블
상황에 따라 DB 구성이 변경될 수 있음
데이터 설계
•
배치 구조 설계 (Step)
•
chunk 기반의 step
•
Job
•
JobRepository
Batch 구조 설계 (1)
•
이용권 만료 - chunk 방식 활용 (Reader / Writer)
•
이용권 일괄 지급
•
예약 수업 전 알람 - 다중 스레드 chunk를 사용하는 방식
•
수업 종료 후 이용권 차감
•
통계 데이터 생성
Batch 구조 설계 (2)
Batch 프로젝트 구성
build.gradle (springboot 3.x.x 버전 기준)
Git Flow
Batch 프로젝트 생성 및 git 설정
Dockerfile 생성
•
script
•
결과
테이블 구조
Docker MySQL 설치 및 테이블 생성
spring-meta-database 생성
•
schema-mysql.sql (인텔리제이에서 검색하면 나옴)
TEST 진행
•
@Param 관련 에러 발생
•
JpaConfig
•
PackageRepository
•
BaseEntity
상세 기능 구현 (JPA를 사용한 MySQL 연동)