멀티 스레드 적용 방식 차이가 있나요?
529
작성한 질문수 8
이전 강의:
AsyncItemProcessor, AsyncItemWriter 구현체 적용하는 방식
현재 강의:
TaskExecutor 구현체 적용하는 방식
요 두가지 방식에서 기능+성능 차이가 있을까요?
단순히 적용 방식 차이 뿐인지 궁금합니다
답변 1
0
네
기능적으로는 AsyncItemProcessor, AsyncItemWriter 같은 경우 실제 비동기 실행은
AsyncItemProcessor 에서만 이루어 집니다.
즉 ItemReader 와 ItemWriter 는 동기 실행입니다.
하지만 Multi-threaded Step 은 ItemReader, ItemProcessor, ItemWriter 모든 클래스가 비동기 실행으로 배치 처리가 진행됩니다.
특히 ItemReader 같은 경우 스레드에 안전하도록 동기화 처리가 필요합니다.
성능차이는 단정적으로 비교할 수 있는 것은 아닙니다.
아무래도 읽을 데이터가 많거나 쓰기 작업까지 포함되는 배치일 경우 Multi-threaded Step 방식이 좀 더 성능적으로 유리하지 않을까 합니다.
스프링 배치 버전 질문
0
120
1
소스코드가 어디에 있나요?
0
96
2
트랜잭션 예외
0
90
1
질문이 있습니다.
0
128
2
ChunkListener 에서 beforeChunk 의 실행 시점 관련 질문
0
124
2
여러 JOB 설정하는법
0
149
2
강의 자료 다른 방법 있을까요?
0
154
1
JobExecution과 JobExecutionContext와의 관계
0
186
2
특정 job만 실행
1
251
1
Batch 성능 질문
0
152
1
ItemReaderAdapter 종료
0
79
1
[ 강좌 Git 브랜치 문의 ] 섹션 9 > JdbcCursorItemReader, JpaCursorItemReader
0
179
2
Spring Batch 배포 질문
0
245
2
spring batch 버전
0
236
2
retry count 관련 질문
0
171
2
StepExecutionListener 의 afterStep 에서 return ExitStatus.FAILED 에 의한 동작에 의문이 갑니다.
0
330
2
jdbc, jpa 커서방식 조회 방식 차이 질문 (강사님께 답변 받고 싶습니다)
0
234
2
Multithread step과 AsyncItemProcessor
0
202
2
job 재실행
0
250
2
bean 생명주기 문제 도와주세요(@Scope("step"), @Autowired)
0
183
1
Multi-threaded-step과 Partitioning 차이 확인
0
174
2
jdbcCursorReader, jdbcPagingReader 질문
0
145
1
step muti-thread 질문
0
109
1
itemSteam open update close 질문
0
110
1





