JavaScript & TypeScript

Node.js 버전 업그레이드를 해야되는 이유

꼰딩 2025. 5. 2. 22:06

이전에 회사에서 모든 어플리케이션 개발환경의 Node.js 버전을 업그레이드한 적이 있습니다.

Node.js 버전을 업그레이드 하지 않고, 단지 polyfill, transpile 해서 사용할 수도 있는데 왜 버전 업그레이드를 해야될까요?

제 기준으로 가장 와닿는 이유를 정리해보았습니다.

 

1. 보안 업데이트

메이저 버전 업그레이드시 CVE 패치가 적용됩니다.

참고: https://github.com/nodejs/node/blob/main/CHANGELOG.md

 

2. 런타임 성능

2-1. 성능 향상

 

node.js 22 버전에서 Maglev 컴파일러를 기본 활성화하여 CLI 성능 향상

참고: https://nodejs.org/en/blog/announcements/v22-release-announce#maglev

 

node.js 20 버전에서 URL, fetch, EventTarget 성능 향상

참고: https://nodejs.org/ko/blog/announcements/v20-release-announce#performance

 

2-2. 각종 벤치마킹에서 성능향상 확인

https://blog.rafaelgss.dev/state-of-nodejs-performance-2023

https://nodesource.com/blog/State-of-Nodejs-Performance-2024

 

3. polyfill, transpile 한계

- 코드 용량 증가 (상위 LTS 버전에서 삭제된 코드가 추가될 수 있음)

- 개발환경 코드와 배포환경 코드가 달라 디버깅 어려움

- 배포시 빌드단계 추가 필요 (JavaScript)

- 새로 생기는 기능은 사용 불가능

  - Single executable applications

 

 

참고하면 좋은 자료

- https://medium.com/%40aamchora/what-exactly-just-in-time-jit-compilation-is-in-javascript-f7aea482843f

- https://laurent.tistory.com/entry/JavaScript-V8-%EC%97%94%EC%A7%84