inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 배치

배치 초기화 설정

여러 JOB 설정하는법

148

김은준

작성한 질문수 3

0

image.pngimage.png

현재 버전에서는 YML에서 names로 job을 여러개 등록하는게 불가능한데
최신 버전 기준으로 JOB을 여러개 설정할 수 없을까요?

spring-boot spring-batch

답변 2

0

정수원

yml 에서는 가능하지 않는 걸로 압니다

@Component

@RequiredArgsConstructor

public class MultiJobLauncher implements ApplicationRunner {

private final JobLauncher jobLauncher;

private final Job jobA;

private final Job jobB;

@Override

public void run(ApplicationArguments args) throws Exception {

JobParameters paramsA = new JobParametersBuilder()

.addLong("time", System.currentTimeMillis())

.toJobParameters();

jobLauncher.run(jobA, paramsA);

JobParameters paramsB = new JobParametersBuilder()

.addLong("time", System.currentTimeMillis() + 1)

.toJobParameters();

jobLauncher.run(jobB, paramsB);

}

}

예를 들어 위 예제처럼 할 수는 있습니다.
기본적으로 Spring Batch는 기본적으로 "한 번에 하나의 Job만 실행"이 원칙입니다
참고 바랍니다

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 김은준님!

스프링 배치에서 여러 개의 Job을 설정하는 방법에 대해 궁금해 하셨군요. 스프링 배치에서 여러 Job을 구성하고 실행하는 것은 일반적인 요구사항 중 하나이며, 이를 효과적으로 관리하기 위해 몇 가지 방법이 존재합니다.

  1. 여러 개의 Job 정의: 각 Job을 독립적으로 @Bean으로 구성하고, 필요한 Step들로 각각의 Job을 정의할 수 있습니다. 이러한 Job들은 필요에 따라 특정 조건이나 일정에 따라 실행될 수 있습니다.

  2. JobLauncherApplicationRunner 사용: 스프링 부트를 사용한다면 JobLauncherApplicationRunner를 활용해 여러 Job을 실행할 수 있습니다. 기본적으로 이 클래스는 실행 가능한 Job을 자동으로 찾아 실행합니다. 만약 특정 Job만 실행하고 싶다면, 특정 Job 이름을 명령줄 매개변수로 입력하여 명시적으로 실행할 수도 있습니다.

  3. 다양한 방법으로 실행 관리: Spring Batch의 다양한 설정 및 프로그래밍 방식으로 여러 Job을 기동하거나 특정 Job을 선택적으로 실행하는 방법도 가능합니다. 이를 위해서는 커맨드 라인 매개변수나 JobParameter 등을 활용합니다.

Jobs를 YML 파일을 통해 여러 개 정의하는 것은 일반적으로 직접적인 방법으로는 제공되지 않지만, 다양한 설정 파일과 프로그래밍 방식을 통해 우회할 수 있습니다.

추가적인 설정 및 예제 코드가 필요한 경우, 아래의 질문과 답변을 참고하시면 도움이 될 것입니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

스프링 배치 버전 질문

0

119

1

소스코드가 어디에 있나요?

0

95

2

트랜잭션 예외

0

90

1

질문이 있습니다.

0

128

2

ChunkListener 에서 beforeChunk 의 실행 시점 관련 질문

0

124

2

강의 자료 다른 방법 있을까요?

0

154

1

JobExecution과 JobExecutionContext와의 관계

0

185

2

특정 job만 실행

1

247

1

Batch 성능 질문

0

151

1

ItemReaderAdapter 종료

0

78

1

[ 강좌 Git 브랜치 문의 ] 섹션 9 > JdbcCursorItemReader, JpaCursorItemReader

0

178

2

Spring Batch 배포 질문

0

245

2

spring batch 버전

0

235

2

retry count 관련 질문

0

170

2

StepExecutionListener 의 afterStep 에서 return ExitStatus.FAILED 에 의한 동작에 의문이 갑니다.

0

327

2

jdbc, jpa 커서방식 조회 방식 차이 질문 (강사님께 답변 받고 싶습니다)

0

233

2

Multithread step과 AsyncItemProcessor

0

201

2

job 재실행

0

250

2

bean 생명주기 문제 도와주세요(@Scope("step"), @Autowired)

0

182

1

Multi-threaded-step과 Partitioning 차이 확인

0

171

2

jdbcCursorReader, jdbcPagingReader 질문

0

142

1

step muti-thread 질문

0

106

1

itemSteam open update close 질문

0

109

1

@JopScope, stepScope 지연 초기화 관련 질문

1

124

1