작성
·
298
0
답변 1
1
안녕하세요. 김남현님
만약 코어가 4개이고 스레드 풀 사이즈가 8개 였는데 16개로 늘린다고 가정하겠습니다.
사용자 수는 계속해서 16명씩 들어온다고 했을때 스레드 풀사이즈가 8개거나 16개거나 상관없이 컨텍스트 스위칭 빈도수는 같지 않나요?
-> 컨텍스트 스위칭 빈도수가 더 늘어납니다.
풀 사이즈가 8개이면 8/4 -> 2번
풀 사이즈가 16개이면 16/4 -> 4번
그런데 cpu 사용률은 코어 갯수보다 스레드 풀 사이즈가 크고 동시 접속자수도 코어 수보다 계속해서 많으면 스레드 풀 사이즈 증가에 따라 cpu 사용률은 똑같지 않나요? 그리고 cpu 사용률은 높으면 좋은거 아닌가요?
-> 컨텍스트 스위칭도 계산이 필요합니다. 그리고 CPU 자원은 무제한이 아닙니다.
컨텍스트 스위칭 비용은 최적화가 잘 되어 있습니다. 실무에서 주로 문제가 되는 부분은 쓰레드가 데이터베이스 조회, 외부 네트워크 등을 호출하면서 block 되는 부분이 주로 문제가 됩니다. 따라서 적절한 쓰레드 숫자를 확보하는 것이 필요합니다.
감사합니다.