thread pool

스레드 풀은 요청마다 새 스레드 대신 작업 큐를 둔다

listener는 job을 큐에 넣고, 미리 만든 worker들이 하나씩 가져가 처리해 생성 비용과 폭주를 줄인다.

요청 입력
  • TcpListener accept
  • job 생성
  • sender로 큐에 넣음
  • 요청 폭주를 큐에서 완충
worker pool
  • 고정 개수 스레드
  • receiver에서 job 수신
  • FnOnce 실행
  • 끝나면 다음 job 대기
구분의미판단
새 스레드 방식요청마다 spawn부하가 늘면 생성 비용 폭증
풀 방식고정 worker 재사용동시 처리량을 제한
대기 작업 저장worker가 처리 속도 결정

핵심 스레드 풀은 병렬성을 무한히 늘리는 것이 아니라 동시에 처리할 일의 수를 통제하는 구조다.