노드 시작하기

노드 시작하기

노드 서버를 만들 일이 생겼습니다. 700페이지짜리 두껍고 무서운 책을 한권 샀습니다. 이름도 무려 Node.js 교과서.

그래도 뷰 공부할때보다는 확실히 덜 막막하고, 서버는 처음 개발해보는거라 약간 설레는 마음이 있습니다.

구입한 책은 Node.js 교과서 - 길벗출판사 .

노드란?

Node.js는 Chrome V8 Javascript엔진으로 빌드된 Javascript 런타임이다.

서버로서의 노드

  • 노드의 가장 큰 특징 : 1) 싱글스레드 2) 논-블로킹 모델
  • 노드를 서버로 사용할때의 장단점
    • 노드는 IO 처리를 잘한다(논블로킹 방식으로 처리).
    • 하지만 노드는 CPU부하가 큰 작업에는 적합하지 않다. >> 작성한 코드 전체가 스레드 하나에서 처리되기 때문

따라서 노드는 개수는 많지만 크기는 작은 데이터를 실시간으로 주고받는 데에 적합하다.

+) 노드에서 멀티스레드 사용이 불가능한건 아닌듯. 노드12에서 안정화된 워커스레드 기능으로 멀티스레딩 작업 가능하다고 한다.

+) 당연히 그래도 그냥 C++, Ruby, Go에 비해선 느리다.

자세히 보기