- node.js란?
- 특징
- node.js는 무엇일까?
요약
"확장성"을 중심으로 하는 높은 처리 성능을 가진소프트웨어 플랫폼이며, 비동기 이벤트 주도 JavaScript 런타임으로써 Node.js 는 확장성 있는 네트워크 애플리케이션을 만들 수 있도록 설계되었다. 더나아가 내장 HTTP 서버 라이브러리를 포함하고 있어 별도의 소프트웨어 없이 웹서버에서 동작가능하다. |
위키백과가 설명하는 node.js
Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다. 내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다. |
node.js 공식홈페이지에서 설명하는 node.js
비동기 이벤트 주도 JavaScript 런타임으로써 Node.js 는 확장성 있는 네트워크 애플리케이션을 만들 수 있도록 설계되었습니다. 왜냐하면, Node.js 에서 I/O를 직접 수행하는 함수는 거의 없으므로 프로세스는 결과 블로킹 되지 않습니다. 아무것도 블로킹 되지 않으므로 Node.js 에서는 확장성 있는 시스템을 개발하는 게 아주 자연스럽습니다. Node.js 는 좀 더 발전된 이벤트 모델을 선택해서 |
용어 정리
+ 블로킹: Node.js 프로세스에서 추가적 js의 실행을 위해 js가 아닌 작업이 완료될 때까지 기다려야만 하는 상황 |
+ 이벤트 루프: 작업 요청 후, 완료되었을 때 어떤 작업을 진행할지에 대한 콜백 함수를 지정하여 동작 완료 시, 해당 콜백함수 실행하는 동작 방식이다. 이벤트루프에 큐 형식의 자료구조가 포함있다. 하지만 이벤트 루프는 이 큐를 돌면서 실행하지 않고, 스택을 처리한다. 이벤트루프는 round-robin 방식으로 차례 차례 돌면서 처리되는 특정 작업들의 단계들로 이루어져 있다. |
About | Node.js
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
nodejs.org
https://nodejs.org/ko/docs/guides/blocking-vs-non-blocking/
블록킹과 논블록킹 살펴보기 | Node.js
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
nodejs.org
https://nodejs.org/ko/docs/guides/event-loop-timers-and-nexttick/
Node.js 이벤트 루프, 타이머, `process.nextTick()` | Node.js
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
nodejs.org
https://ko.wikipedia.org/wiki/Node.js
Node.js - 위키백과, 우리 모두의 백과사전
Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한
ko.wikipedia.org
+요새 프론트엔드에서 node.js를 런타임환경으로 많이 사용한다.
왜 많이 사용하게될까? 답은 댓글로 gogo~~
'포트폴리오 > it개념들(이슈도 포함)' 카테고리의 다른 글
Node.js의 BE 또는 FE Library / Framework란? (0) | 2021.08.05 |
---|---|
'REST API'란 무엇인가? (0) | 2021.08.05 |
라이브러리와 프레임워크의 차이는? (0) | 2021.08.05 |
정적 타입 언어 vs 동적 타입 언어 (0) | 2021.08.05 |
npm이란? (0) | 2021.08.05 |