[Node.js] Node.js란?

이승연·2021년 1월 16일
0

Node.js

목록 보기
2/4
post-thumbnail
  • 사실 장고와 node.js를 비교하는 것 자체가 맞는 일은 아닌 것 같다. Node.js 프레임워크가 아니기 때문이다. Node.js는 JavaScript 런타임 환경을 가능하게끔 만드는 Chrome V8엔진이 브라우저 없이 작동할 수 있도록 만든 환경이다. JavaScript 런타임 환경은 JavaScript로 짜여진 소스코드를 CPU가 이해할 수 있는 기계어(0과 1로 이루어진 bytecode)로 변환시키고 또한 프로그램의 메모리를 관리하는 시스템을 일컫는다.

동기 비동기

  • 비동기: 기다리지 않음. 걍 빨리 되는대로 처리.

이벤트 기반 (Single Thread)

  • Node.js event loop이 돌면서 이벤트를 수집하고 그걸 하라고 C++ Chrome V8 엔진에 던져준다. 끝나는 순간 single thread가 완료된 명령을 수집해서 클라이언트에게 줌.

Javascript 런타임 환경: C++ Chrome V8 엔진

  • Javacript 런타임 환경: JavaScript 로 짜여진 소스코드를 CPU가 이해할 수 있는 기계어(ex. 0과 1로 이루어진 bytecode)로 변환시키고 또한 프로그램의 메모리를 관리하는 시스템
  • 이런 환경을 가능케하는 것이 v8엔진이다. 싱글 스레드가 건네주는 heavy load를 담당하고 있다.
  • 원래 자바스크립트로 웹개발은 브라우저의 콘솔 창에서만 가능했다. 이것을 로컬에서 가능케 만든 것이 nodejs

0개의 댓글