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

황제연·2025년 8월 27일
0

CS학습

목록 보기
179/193
post-thumbnail

JobExecution

JobInstance에 대한 한번의 시도를 의미하는 개체로서 Job 실행 중에 발생한 정보들을
저장하고 있는 객체를 의미합니다
시작시간, 종료시간, 상태 등의 속성을 가집니다

JobInstance와의 관계

JobExecution은 FAILED또는 COMPLETED등의 Job의 실행 결과 상태를 가지고 있습니다
JobExecution의 실행 상태 결과가 COMPLETED면 JobInstance 실행이 완료된 것으로 간주해서
재실행이 불가합니다

JobExecution의 실행 상태 결과가 FAILED이면 JobInstance 실행이 완료되지 않은 것으로 간주해서
재실행이 가능합니다
JobParameter가 동일한 값으로 Job을 실행할지라도 JobInstance를 계속 실행할 수 있습니다
JobExecution의 실행 상태 결과가 COMPLETED될 때까지 하나의 JobInstance내에서
여러번의 시도가 생길 수 있습니다

BATCH_JOB_EXECUTION 테이블과 매핑

JobInstacne와 JobExceution은 1:M의 관계로서 JobInstacne에 대한 성공/실패 내역을 가지고 있습니다

스프링 배치 도메인 - JobExecution

기존 배치 도메인 모델에서 JobInstance가 실행되면 JobExceution은 항상 새로 생성됩니다
이후, BatchStatus를 확인하는데, 만약 Job시도 결고가 실패일 경우,
JobInstance를 재실행할 수 있씁니다

만약 Job 시도 결과가 성공 완료일 경우 JobInstance 실행이 불가능합니다

참고

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

0개의 댓글