- 이름: 신연상
- 사는 곳 : 서울시 강남구
- 나이 : 21
- 취미 : 유튜브 & 방탈출
- Non-blocking I/O와 단일 스레드(Single Thread) 이벤트 루프를 통한 높은 처리 성능을 가진다.
- 개발 언어가 JavaScript이기 때문에, 프런트엔드 개발자가 나름 쉽게 백엔드 개발까지 할 수 있다.
JavaScript 언어 자체가 JSON 을 지원하는 것도 큰 장점이다. - 구글의 V8 JavaScript 엔진을 사용하기 때문에, 구글이 무너지지 않는 한 계속 발전한다(빨라진다).
- 이 외에 가볍게 돌아가고, 서버 무리가 적고, npm(node package manager)을 통해 다양한 패키지를 이용할 수 있다.
실제로 굉장히 많은 npm 패키지들(47만개?)과 유저들이 있다.. 앵간한 기능은 이미 npm 패키지로 구현되어 있다고 한다.
(2016년 자료긴 하지만 참고)
- 단일 스레드이기 때문에 한 작업이 시간이 오래 걸리면 전체 성능이 낮아진다.
따라서, 게시판 형태와 같은 가벼운 I/O가 많은 웹서비스에 어울린다고 한다. - 이벤트 기반 비동기 방식이라 서버단의 로직이 복잡하면 Callback Hell에 빠질 수 있다. (가독성이 떨어진다)
- 에러가 발생하면 프로세스 자체가 죽어버린다. (주의해야 할 사항)