sprign webflux와 main 쓰레드 수
407
작성한 질문수 1
제가spring webflux를 공부하다가 궁금한게 있어서 이렇게 질문 남깁니다.
webflux는 비동기 프로그래밍을 지원하기 때문에 적은 쓰레드 수로도 대량의 트래픽을 처리할 수 있다고 알고 있는데요. [실제로 사용자 요청을 받는 main 쓰레드는 한 개만 생성되는지 궁금합니다.]
webflux는 블로그를 보다가 default값으로 core 당 한개의 쓰레드가 생성한다고 본거 같은데.. 이게 main 쓰레드는 한개 인데 sub 쓰레드(block 상태 풀린 쓰레드 요청 처리 용, event loop 처리 용 등)들이 core 갯수까지 추가적으로 생성된다는건지(main + sub == core수), 아니면 main 쓰레드가 실제로 코어 수만큼 생성이 된다는 의미인지 잘 모르겠네요..
마지막으로, 후자가 맞다면 webflux는 소수의 main 쓰레드로 멀티 쓰레딩 지원과 비동기 프로그래밍을 지원한다고 보면되는걸까요?
답변 1
0
안녕하세요, 인프런 AI 인턴이에요. Spring WebFlux에 대한 궁금증에 대해 답변해드릴게요.
Spring WebFlux는 비동기 프로그래밍을 지원하기 위한 모듈로, 적은 수의 스레드로도 대량의 트래픽을 처리할 수 있습니다.
실제로 사용자 요청을 받는 main 스레드에 대해서 말씀드리면, Spring WebFlux에서는 main 스레드가 한 개만 생성됩니다.
그러나, sub 스레드는 core의 개수에 따라 추가적으로 생성됩니다. core의 기본값은 보통 CPU 코어의 수와 동일한데요.
즉, main 스레드 한 개와 sub 스레드(core 수만큼)의 조합으로 비동기 처리 및 블로킹 작업 처리 등이 이루어지게 됩니다.
따라서 Spring WebFlux는 소수의 main 스레드로 멀티 스레딩과 비동기 프로그래밍을 지원한다고 볼 수 있습니다.
더 궁금하신 내용이 있으시면 언제든지 물어보세요. 좋은 하루 되세요.
안녕하세요 토비님 혹시 완성된 코드의 repository 주소는 없을까요?
0
12
0
자막 오타 제보
0
17
1
운영환경에 적용해볼 수 없을때...고민입니다 ㅠㅠ
0
18
1
빈 스코프 개념의 중요성
0
24
1
트랙잭션 격리수준 선택에 대해서 질문
0
25
1
안녕하세요 치킨 디도스 이벤트 보고 흉내내보려 들어왔습니다..
0
29
2
실무 내용 문의드려요
0
28
2
SingletonService가 JVM이 뜰 때 생성되는게 맞나요?
0
70
2
임포트 오류
0
40
2
답을언제쯤받아볼수있나요
0
67
2
형 책 어떻게 받아?
1
66
1
@JsonIgnore 이후 Internal Server Error가 발생하지 않습니다.
0
35
2
mvc 패턴 - 적용 강의에서 회원가입할 때 redirect가 아닌 forward인 이유가 궁금합니다.
0
31
1
프로젝트가 없어요..
0
74
2
JpaCursorItemReader의 정렬 조건 부재의 영향
1
50
2
changeTeam 메서드 질문
0
35
1
"컴파일 시점에 없는 값을 어떻게 참조할 것인가?" 섹션
1
56
2
테스트 관련 질문!
0
61
2
handleBindException 의 기대의도가 방향이 맞는지 궁금합니다.
0
43
2
SpringBoot 4.0.6 버전에서 PackageLogTracePostProcessor exception
0
91
3
인텔리제이 오류
0
58
1
프로젝트 의존 관계
0
53
2
application.properties가 적용되지 않아요
1
82
3
새 프로젝트 속 제너레이터에 SpringBoot가 없습니다.
0
60
2





