inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 배치

AsyncItemProcessor / AsyncItemWriter

AsyncItemProcessor 트랜잭션 단위

295

작성자 없음

작성한 질문수 0

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

선생님 안녕하세요!

질문이 있습니다.

 

코드를 봐보니

AsyncItemProcessor를 사용할 때도 트랜잭션은 개별 아이템 단위가 아니라 Chunk 단위인 것 같은데 맞을까요?

 

spring-boot spring-batch

답변 2

0

정수원

트랜잭션은 chunk 단위로 처리됩니다.

다만 AsyncItemProcessor 를 수행하는 스레드는 각 스레드별로 트랜잭션을 타고 가기 때문에 스레드간 트랜잭션을 공유하지는 않습니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

츄핀어드벤쳐님, Spring Batch에서의 AsyncItemProcessor 관련 질문 감사합니다.

AsyncItemProcessor를 사용할 때 실제로 트랜잭션 범위는 Chunk 단위로 적용됩니다. 이는 Spring Batch가 일반적으로 Chunk 지향 처리를 기반으로 동작하며, 그 안에서 여러 아이템들이 처리될 때 하나의 묶음으로써 트랜잭션 관리가 이루어지기 때문입니다.

따라서 여러분이 말씀하신 것처럼, 비동기 처리를 담당하는 AsyncItemProcessor를 사용하더라도 트랜잭션은 개별 아이템 단위가 아닌 Chunk 단위로 유지됨을 확인할 수 있습니다. AsyncItemProcessor 자체는 처리 과정을 비동기화하지만, 이는 트랜잭션의 범위와는 별개의 문제입니다.

더 궁금한 사항이 있으시면 추가 질문해주시기 바랍니다. 성공적인 학습 되시길 바랍니다!

스프링 배치 버전 질문

0

122

1

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

0

96

2

트랜잭션 예외

0

92

1

질문이 있습니다.

0

130

2

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

0

125

2

여러 JOB 설정하는법

0

150

2

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

0

154

1

JobExecution과 JobExecutionContext와의 관계

0

186

2

특정 job만 실행

1

252

1

Batch 성능 질문

0

153

1

ItemReaderAdapter 종료

0

80

1

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

0

179

2

Spring Batch 배포 질문

0

245

2

spring batch 버전

0

236

2

retry count 관련 질문

0

172

2

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

0

330

2

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

0

235

2

Multithread step과 AsyncItemProcessor

0

203

2

job 재실행

0

251

2

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

0

183

1

Multi-threaded-step과 Partitioning 차이 확인

0

175

2

jdbcCursorReader, jdbcPagingReader 질문

0

146

1

step muti-thread 질문

0

110

1

itemSteam open update close 질문

0

112

1