피드로 돌아가기
Node.js 4.8.1 (LTS)
Node.js BlogNode.js Blog
Backend

Node.js가 4.8.1 LTS 릴리스를 통해 Buffer.toJSON() 성능을 2859% 향상 및 IPC 배치 쓰기로 최대 40% 성능 개선

Node.js 4.8.1 (LTS)

2017년 3월 21일5intermediate

Context

Node.js 4.x 장기 지원(LTS) 버전에서 Buffer 직렬화, IPC 통신, HTTP 보안 관련 여러 성능 및 안정성 문제들이 누적되어 있었습니다.

Technical Solution

  • Buffer.toJSON() 성능 최적화: 직렬화 알고리즘 개선으로 평균 2859% 성능 향상 달성
  • IPC 배치 쓰기 활성화: Unix Domain Sockets을 지원하는 플랫폼에서 프로세스 간 통신의 배치 쓰기 메커니즘 도입
  • HTTP 제어 문자 검증 강화: http.request() 호출 시 제어 문자를 항상 거부하도록 변경하여 보안 취약점 제거
  • 힙 통계 확장: 4GB를 초과하는 힙 메모리 크기에 대한 통계 정보 지원 추가
  • 암호화 및 빌드 안정성 개선: OpenSSL 1.1.0 호환성 강화, 컴파일러 경고 처리, 신호 핸들러 격리

Impact

  • Buffer.toJSON() 평균 2859% 성능 향상
  • IPC 배치 쓰기로 일부 워크로드에서 최대 40% 성능 개선

Key Takeaway

LTS 버전의 마이너 릴리스에서도 코어 모듈의 직렬화·통신 경로에 대한 알고리즘 최적화와 보안 검증 강화를 통해 측정 가능한 성능 이득을 확보할 수 있습니다.


Node.js 애플리케이션에서 대량의 Buffer 객체를 JSON으로 변환하거나 자식 프로세스와의 IPC 통신이 병목인 경우,

4.

8.1 이상으로 업그레이드하면 별도 코드 수정 없이 2859% 및 최대 40%의 성능 개선을 기대할 수 있습니다.

원문 읽기