각 OS에서는 이벤트 디멀티플렉서에 대한 자체 인터페이스 존재.
서로 다른 운영체제의 불일치로 인한 이벤트 디멀티플렉서에 대한 보다 높은 수준의 추상화 필요.
libuv를 통해 모든 주요 플랫폼과 호환 가능.
논 블로킹 실행을 표준화.libuv는 Reactor 패턴을 구현 하고 있음!
1) bindings
libuv와 기타 low-level의 기능을 JavaScript에 랩핑하고 사용가능 하게 만듬.
2) V8
google에서 크롬 브라우저용으로 개발한 JavaScript 엔진.
3) Core JavaScript API(Node-Core)
high-level의 Node.js API 구현.
내용 출처
Node.js 디자인패턴