[CS/데이터처리] 스프링 배치 - 5부

황제연·2025년 8월 24일

CS학습

목록 보기
176/194
post-thumbnail

JOB

개념

배치 계층 구조에서 가장 상위에 있는 개념으로서 하나의 배치 작업 자체를 의미합니다
예를들어 API 서버의 접속 르고 데이터를 통계 서버로 옮기는 배치를 JOB 자체로 의미라고 의미합니다

Job Configuration을 통해 생성되는 객체 단위로서 배치 작업을 어떻게 구성하고
실행할 것인지 설정하고 명세한 객체를 의미합니다

배치 Job을 구성하기 위한 최상위 인터페이스이고 스프링 배치가 기본 구현체를 제공합니다
여러 Step을 포함하고 있는 컨테이너로서 반드시 한개 이상의 Step으로 구성해야합니다

기본 구현체

SimpleJob

순차적으로 Step을 실행시키는 Job으로 모든 Job에서 사용할 수 있는 표준 기능을 갖고 있습니다

FlowJob

특정한 조건과 흐름에 따라 Step을 구성하여 실행시키는 Job으로
Flow 객체를 실행시켜서 작업을 진행합니다

전체 흐름도

JobParameters로 부터 값을 받아 JobLauncher를 run(job.parameters)를 실행합니다
Job이 execute되면서 각 step을 진행합니다

이때, Job이라는 인터페이스는 void execute(JobExecution)이라는 Job 실행 메소드를 가지고 있습니다
Job 인터페이스를 구현한 AbstractJob이라는 추상 클래스에는 Job의 이름부터 재시작 여부
Step 실행 핸들러 등 다양한 정보를 가지고 있습니다

그리고 AbstractJob을 SimpleJob과 FlowJob으로 구현하며, 각각 Step과 Flow를 기반으로 동작합니다

참고

  • 스프링 배치 - 정수원 인프런 강의
profile
Software Developer

0개의 댓글