Node.js 19강 - worker_threads
- Node.js의 worker_threads 모듈을 사용하여 멀티스레딩을 구현하는 방법을 설명합니다. 👨🍳
- 메인 쓰레드의 부하를 줄이기 위해 CPU 집약적인 작업을 별도의 worker thread로 처리하는 기법을 다룹니다. ⚙️
- worker thread와 메인 thread 간의 통신은 ParentPort를 통해 이루어지며, 메시지 이벤트를 통해 데이터를 주고받습니다. ✉️
- 여러 개의 worker thread를 생성하고 관리하는 방법과, 각 worker thread의 종료 처리 방법(terminate, close)을 제시합니다. 🚦
- 메인 쓰레드와 worker thread 간의 메모리 공유 및 동기화를 위해 SharedArrayBuffer와 Atomics를 활용하는 방법을 보여줍니다. 🤝
- Thread pool을 구현하여 worker thread를 재사용함으로써 효율성을 높이는 방법과, 외부 라이브러리(piscina)를 활용한 간편한 구현 방법을 소개합니다. 🏊♂️