Brust

어떠한 현상이 집중적으로 발생하는 것

  • CPU Burst란?
    • '프로세스'가 CPU 작업이 계속해서 일어나는 시간
  • I/O Burst란?
    • '프로세스'가 I/O 작업이 끝날 때 까지 대기하는 시간

일반적으로는 CPU는 짧게 쓰고 끝나는 편. (표 참조)

CPU Bound란

CPU Burst가 많은 것

동영상 편집 프로그램, 머신러닝 등이 해당

I/O Bound란

I/O Burst가 많은 것?

(일반적인) 백엔드 API 서버

CPU Bound 프로그램에서 적절한 스레드 양

CPU와 스레드 개수가 동일하거나, 조금 더 많은 양을 권장

I/O Bound 프로그램에서 적절한 스레드 양

thread per request 모델의 경우 상황에 따라 적절하게 튜닝하는 것이 중요

  • 현재 사용중인 하드웨어 스펙은 어떻게 되는가?
  • I/O Burst 비율은 어떻게 되는가?
  • 사용자의 트래픽 패턴은 어떻게 되는가?

개인적 견해: 성능 테스트를 해서 적정한 사이즈를 찾자.

참고