inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 배치

Multi-threaded Step

멀티스레드 속도 질문입니다

579

김나다

작성한 질문수 8

0

setCorePoolSize 2, setMaxPoolSize 8 일 때 블락 등이 발생하지 않아서 2개로만 동작한다고 하셨습니다.

cpu 하나가 2개 스레드를 번갈아가면서 동작시킬텐데요. 오히려 싱글스레드보다 context switching시간만 추가되어서 처리속도가 더 늘어나야 되지 않나 싶어요.

이유를 알 수 있을까요??

 

spring-batch spring-boot

답변 1

0

정수원

컨텍스트 스위치는 스레드의 경합으로 부하가 생길 정도로 개수가 많거나 동시적 이슈에 영향이 갈 정도이면 성능에 영향을 주지만 적은 스레드인 경우에는 컨텍스트 스위치로 인한 성능저하는 염려할 정도는 아니며 거의 병렬실행이 가능하다는 장점이 있기 때문에 싱글스레드보다 더 나은 성능을 보여줄 수 있습니다.

다만 cpu 가 처리하는 연산이 복잡하지 않거나 아주 단순한 처리일 경우에는 싱글스레드가 나을 수 있습니다.

시스템이나 서비스 상황에 따라 스레드 정책을 세우는게 좋습니다.

스프링 배치 버전 질문

0

127

1

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

0

100

2

트랜잭션 예외

0

92

1

질문이 있습니다.

0

131

2

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

0

127

2

여러 JOB 설정하는법

0

152

2

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

0

157

1

JobExecution과 JobExecutionContext와의 관계

0

190

2

특정 job만 실행

1

257

1

Batch 성능 질문

0

153

1

ItemReaderAdapter 종료

0

81

1

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

0

179

2

Spring Batch 배포 질문

0

246

2

spring batch 버전

0

236

2

retry count 관련 질문

0

174

2

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

0

332

2

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

0

235

2

Multithread step과 AsyncItemProcessor

0

203

2

job 재실행

0

253

2

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

0

183

1

Multi-threaded-step과 Partitioning 차이 확인

0

178

2

jdbcCursorReader, jdbcPagingReader 질문

0

146

1

step muti-thread 질문

0

111

1

itemSteam open update close 질문

0

113

1