728x90
반응형
Spring Batch를 접하면 가장 많이 만나는 녀석들 Job과 Step을 알아보자
우선 Spring Batch Domain을 정리해 보면
JobLauncher
- JobLauncher는 Job과 JobParameters를 사용하여 Job을 실행하는 객체이다.
Job
- 배치 처리 과정을 하나의 단위로 만들어 표현한 객체
- Job 이름 정의
- Step의 실행 순서 정의
- Job의 재사용 가능성을 정의
JobInstance
- Job이 실행될 때 생성되는 Job의 논리적 실행 단위 객체로써 고유하게 식별 가능한 작업 실행
- JobPrameters를 이용하여 구분
- Job : JobInstance = 1 : *
JobExecution
- JobInstance의 실행 결과 객체
- 실패했던 JobInstance에 대해 새로운 실행을 하면 새로운 JobExecution이 생성JobExecution Properties
- BatchStatus : 실행 상태 (stared : 실행중, failed : 실패, completed : 성공)
- ExitStatus : 실행 결과 상태.
Step
- Step은 실질적인 배치 처리를 정의하고 제어하는 데 필요한 모든 정보가 들어 있는 도메인 객체이다.
- Batch를 처리하고 정의하는 모든 정보를 포함
- Step의 내용은 개발자의 재량으로 복잡하거나 단순하게 구현 가능
- 고유한 JobExecution과 관련된 개별 StepExecution 존재
StepExecution
- Status : 실행 상태
- ExitStatus : 실행 결과 상태
JobRepository
- Job, Step 구현을 위한 CRUD 작업을 제공
- JobLauncher, Job, Step에 대한 실행 정보를 저장
아직 갈 길이 멀다,,,
728x90
반응형
'Web > Spring' 카테고리의 다른 글
맨땅에 Spring Batch - Task 그리고 Chunk (0) | 2024.01.16 |
---|---|
맨땅에 Spring Batch - Item (0) | 2024.01.16 |
맨땅에 Spring Batch - Meta Table (0) | 2024.01.16 |
맨땅에 Spring Batch - 설정 (0) | 2024.01.16 |
맨땅에 Spring Batch (0) | 2024.01.16 |