티스토리 뷰

공부

node.js + express 설치

Vincent Park 2013.03.08 22:00

아파치(apache) 가 서버로의 요청(request)이 늘어날수록 메모리 사용량이 점점 늘어나는 것과는 대조적으로, 
node.js 는 싱글스레드기반의 이벤트뤂(Single-threaded Event loop) 방식이기 때문에 메모리 사용량이 증가하지 않는다.

Event Loop 이란것은 우리가 흔히 알고 있는 콜백함수 패턴을 생각하면 이해하기 쉽다.
서버로 이벤트(요청)가 들어오게 되면 처리되는 대로 바로 지정된 콜백이 실행되기 때문에, I/O에 요청을 보낸 후에도 다른 작업을 계속 수행할 수 있게 되는 것이다.

바로 이점이 node.js 의 가장 큰 매력이고 그외에도 매력적인 특징이 많기 때문에 사용해보지 않을 수 없다.


node.js & npm 설치
npm 은 앞으로 node.js 에 쓰일 각종 추가모듈 패키지를 쉽게 설치해주는 도구다.

$ sudo apt-get install nodejs
$ sudo apt-get install npm

※ OS X 에서는 아래 참고
$ sudo port install nodejs
$ sudo port install npm


nodejs 실행 확인

$ vi server.js
var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World!\n');
}).listen(3000);
console.log('Server running at port 3000');
저장후 종료

$ nodejs server.js
Server running at port 3000

브라우저를 통해서 아래 주소로 확인한다.
http://[server-ip-address]:3000/
Hello World! 문구 확인


express 설치
express 는 node.js 용 mvc framework 으로, 쉽고 간편하게 고품격(?) restful 웹app 을 만들수 있게 해준다.

$ npm install express
$ sudo npm install -g express
$ express --version
3.1.0

※ 우분투에서 express 커맨드 실행시 충돌에러가 난다면, 아래처럼 node 패키지 바이너리를 nodejs 로 연결해준다.

$ sudo ln -s /usr/bin/nodejs /usr/local/bin/node


jade 설치
nodejs 용 html 템플릿 엔진으로써, jade syntax 로 작성하면 html/javscript 로 만들어준다.

$ npm install jade


express 를 사용해서 웹app 만들기
이제 준비된 재료를 사용해서 express command 를 통해 간단한 웹app 을 만들어 보자.

$ mkdir work
$ express work/test
create : test
......
$ cd work/test && npm install
$ node test

참 쉽죠? ^^;
이렇게 쉽고 간편하게 만들어진 웹app 을 브라우저를 통해 확인해보자.
http://[server-ip-address]:3000/
Welcome to Express 문구 확인



댓글
댓글쓰기 폼