반응형
적정 스레드 수치라는 것을 잡는다는게 어렵다.
다음은 [1]에서 본 것으로 윈도우즈 네트워크 프로그래밍이란 책에서 추천하는 스레드의 수라고 한다.
스레드 개수 = ( 프로세스 개수 X 2 ) + 1
스레드 개수 = ( 프로세스 개수 X 2 ) + 2
성능 및 안정성에서 위에 수치가 적정하다고 본다.
하지만 최상의 성능을 끌어내기 위한 수치는 아니라고 본다.
적정 스레드 수치가 아닌 최상의 스레드 수치를 끌어내려면
하드웨어 성능과 소프트웨어의 시스템 설계를 고려해서 정해야만 한다.
JBoss 경우에는 512개, Netty의 경우에는 코어의 수만큼이 되어 있다.
Netty가 가지고 있는 스레드 이 기본값(코어의 수)은 스레드가 CPU를 100% 사용한다고 할 때의 수치이다.
만약 각 스레드가 CPU를 10%사용한다면 각 CPU들은 90%가 놀게 되니 최적의 성능을 끌어낼 수 없을 것이다.
JBoss가 갖는 기본값이 512개도 설계상의 이유가 있을것이다.
Reference
[1] GrpStudy ( http://www.gpgstudy.com/forum/viewtopic.php?p=60875 )
반응형
'Devlopment > 정리 글' 카테고리의 다른 글
AWS re:Invent 2019 12월 2일 키노트 요약 (0) | 2019.12.05 |
---|---|
Java9 특징 (0) | 2016.12.12 |
DDD와 JPA에 대해서 알아야 하는 이유 (0) | 2016.06.24 |
함수형 프로그래밍이 주목받는 이유 (0) | 2016.04.27 |
Qt(Qt Development Frameworks)란 무엇인가? (0) | 2012.04.16 |
정규식 예제 (0) | 2012.03.29 |
Java에서 JNI를 써서 핑 프로그램을 구현하는 이유 (0) | 2012.01.30 |
버전 관리 & 이슈 관리 시스템 (0) | 2011.06.07 |
C와 Java의 컴파일 과정 (1) | 2011.05.27 |
난수 발생기 (2) | 2010.06.23 |