피드로 돌아가기
Node.js 4.0.0 (Current)
Node.js BlogNode.js Blog
Backend

Node.js 프로젝트가 io.js와 통합하여 V8 4.5를 탑재한 4.0.0 출시로 ES6 기능 기본 활성화 및 ARM 프로세서 공식 지원 달성

Node.js 4.0.0 (Current)

2015년 9월 8일10intermediate

Context

Node.js와 io.js는 별도로 발전하면서 커뮤니티가 분산되고 개발 방향이 엇갈리고 있었다. 기존 Node.js v0.12는 ES6 기능이 제한적이었고 다양한 플랫폼에 대한 공식 지원이 부족했다.

Technical Solution

  • V8 엔진을 4.5 버전으로 업그레이드하여 블록 스코핑, 클래스, 화살표 함수, Promise, 제너레이터, 템플릿 문자열, Map/Set 등 ES6 기능을 기본으로 활성화
  • node-gyp를 업데이트하여 전체 소스 대신 헤더 tarball만 다운로드하도록 변경하여 애드온 빌드 효율화
  • ChildProcess.prototype.send()와 process.send()를 모든 플랫폼에서 비동기로 동작하도록 변경하고 콜백 파라미터 추가
  • ARMv6, ARMv7, ARMv8 프로세서를 포함한 전용 테스트 클러스터 구축으로 Linux, OS X, Windows, FreeBSD, SmartOS에 대한 공식 지원
  • Semantic Versioning(SemVer)을 도입하고 LTS(4.x, 30개월) → Stable(5.x, 6개월 주기) → Maintenance 릴리스 사이클 확립

Impact

Node.js와 io.js 통합으로 44명의 협력자와 15명의 TSC로 구성된 단일 팀 운영 체계 구축. v0.12.7 이후 100명 이상의 신규 코드 기여자 확보.

Key Takeaway

분산된 프로젝트 통합 시 아키텍처 선택지 제공(LTS와 Stable 채널 분리)과 명확한 지원 주기 선언이 엔터프라이즈 도입과 커뮤니티 신뢰 확보의 핵심이다.


Node.js 기반 서비스를 운영하는 팀에서 v

4.

0.0 이상으로 마이그레이션할 때 네이티브 애드온 호환성을 NAN(Native Abstraction for Node.js) 라이브러리로 해결할 수 있으며, io.js v

3.x 시리즈 준비 기간을 통해 npm 생태계 대부분이 이미 호환성을 갖춘 상태이다.

원문 읽기