본문 바로가기
javascript

Node.js

by Younji! 2016. 8. 29.

(간단하게 정리)

Node.js


Node.js® Chrome V8 JavaScript 엔진으로 빌드된 JavaScript 런타임. Node.js 이벤트 기반, 블로킹 I/O 모델을 사용해 가볍고 효율적. Node.js 패키지 생태계인 npm 세계에서 가장 오픈 소스 라이브러리 생태계

 

I/O 너무 고비용..이라는 이론으로 시작된게 node.js


 

-메인 이벤트 루프는 싱글 스레드.




그러나 node.js i/o api들은 비동기/논블럭킹으로 디자인 됐기 때문에 분리된 스레드를 사용.

아파치경우는 멀티스레드인데, 하나의 request마다 또는 프로세스마다 스레드가 생겨남. 메모리 잡아먹고 커넥션 늘어나고 난리남.

프로세스나 스레드가 메모리비용이 엄청나기 때문에 nginx node.js 는 멀티스레드가 아닌거임 대신에 이벤트 기반이쥣


참고 출처 : http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/






2016.08.29 (월요일)


npm (a package manager for javascript)

 

// command line grunt cli 를 사용할 땐, globally를 사용하고 본인 모듈 안에서 node require를 사용하려면 locally install하면 됨

// 참조) –g globally install package

è  Globally - ../lib/node_modules

 

npm init (package.json 생성) 의존성 모듈 관리 파일 (express, 자동 생성).

npm install , package.json 모듈 한번에 사용 가능.

 

++++++++++++++++++++++++++++++++++++++++++++++++++++++++



express-generator // node 애플리케이션 골격 생성기

npm install –g express-generator // express-generator 설치

express new_project_name // 새로운 프로젝트 이름에 폴더 트리 구조 생성

npm install // express package.json 에 dependencies 들 install

 


* exports 여러 속성과 메소드 생성

* modules.exports 하나의 속성 또는 메소드


참고 git URL : https://github.com/anny0739/ecafe_app_api_server


 

 

 

 

'javascript' 카테고리의 다른 글

클라이언트 WebView  (0) 2019.06.26

댓글