본문 바로가기
프레임워크/[JS] node.js

node.js 의 장점과 단점

by hs_seo 2016. 1. 22.

[장점]

- 싱글스레드, 비동기 IO 처리에 기반한 빠른 속도

- 파일 I/O나 네트워크 처리를 이벤트 드리븐 방식으로 처리하기 때문에 빠른 처리가 가능함

- CPU의 대기시간을 최소화 할 수 있음

- CPU 부하가 적고, 많은 커넥션을 동시에 처리해야 하는 구조에 적합

- 자바스크립트를 이용해서 개발할 수 있기 때문에 프론트엔드 개발자의 진입장벽이 낮음

- 기존 Java 서버에 비해 생산성이 높음


[단점]

- 싱글스레드 모델이기 때문에 하나의 작업에 시간이 오래걸리면 시스템 전체의 성능이 급격하게 떨어짐

- 이벤트 콜백 중심으로 코드가 중첩될 경우 가독성이 떨어짐

- 에러가 발생할 경우 프로세스 자체가 죽어버리므로 주의해야 함(watch dog 등으로 처리 가능)

- 멀티코어 활용을 위해서 cluster 모듈을 이용해야 하고, 세션을 공유할 경우 부가적인 작업이 필요함


[종합]

- 개발이 빠르고 쉬운 장점이 있지만 운영 과정의 어려움이 존재함

- REST API 서버, Push 서버등에 사용해야 할 것 같음







출처 조대협님 블로그: http://bcho.tistory.com/876

반응형