피드로 돌아가기
Porting Node to Windows With Microsoft’s Help
Node.js BlogNode.js Blog
Backend

Microsoft와 Joyent가 협력하여 Node를 Windows에 네이티브 포팅하고 IOCP API 기반 공식 node.exe 바이너리 배포

Porting Node to Windows With Microsoft’s Help

2011년 6월 23일3intermediate

Context

Node.js는 원래 Unix 기반 시스템에 최적화되어 있었으며, Windows 환경에서의 지원이 제한적이었다.

Technical Solution

  • Node 코어 구조의 대규모 수정을 통해 Windows 네이티브 포팅 진행: IOCP(I/O Completion Ports) API 기반 구현
  • Microsoft의 공식 엔지니어링 리소스와 기술 지원 투입
  • Rackspace가 Bert Belder의 개발 시간 기여
  • nodejs.org를 통한 공식 node.exe 바이너리 배포
  • Windows Azure 및 Windows Server 2003 이상의 버전 지원 대상으로 설정

Key Takeaway

큰 규모의 플랫폼 포팅 작업은 기업 간 협력을 통해 엔지니어링 리소스를 집중시킬 때 성공 가능하며, 특정 플랫폼의 고성능 API(IOCP)를 활용한 네이티브 구현이 광범위한 호환성 확보의 핵심이다.


크로스 플랫폼 런타임 환경을 개발하는 팀이 새로운 OS 포팅을 계획할 때, 해당 플랫폼의 고성능 I/O API(Windows의 IOCP, Linux의 epoll 등)를 직접 활용하고 코어 아키텍처를 재구조화하면 네이티브 성능과 광범위한 하위 버전 호환성을 동시에 달성할 수 있다.

원문 읽기