반응형
Node.js?
- 서버사이드 자바스크립트 (V8 Engine으로 Compile한다) 프레임워크
- 이벤트 기반으로 동작하고, Non-Blocking I/O 방식이다
- 목적은 확장가능한 네트워크 프로그램들을 간단하게 만드는 것이다.
- 현재 (2015.01.26) 버전 : v0.10.33
- CommonJS 모듈 시스템
- C랑 C++로 만들어짐
- 2009년 라이언 달이 JSConf에 발표
- Only One Thread operate a event-loop
What is positive Node.js's effect?
- 가볍다. 아래의 코드로 간단한 http 서버를 구동할 수 있다.
var http = require("http"),
io = require("./node_modules/socket.io"),
server = http.createServer(function(req, res){});
server.listen(9003, null);
var socket = io.listen(server);
socket.on("connection", function(client){
client.on("message", function(msg) { });
client.on("disconnect", function() { });
});
2. 빠르다. 동시접속자 10만, 25만 성공
3. apache에 비해서 간단한 http 속도가 3배 빠르다.
Why is java script in Node.js?
- 익명 함수, closures
- 한번에 한개의 callback 메소드
- 함수를 parameter로 전달, 변수에 할당 가능, 리턴값으로 사용 가능 (first-class function)
- 이벤트 기반에 익숙한 언어
- 특정 시점에 실행중인 이벤트 핸들러는 하나 뿐이다.
- 모든 이벤트 핸들러는 방해 없이 실행을 마칠 수 있다.
Saving/Loading of module
- 모듈을 로드하려면
var module = require("http");
2. 모듈을 저장하려면
var add = function (a,b){ return a+b;};
export.add = function(a,b){ return a+b;};
export.add = add
3. 위와 같이 작성한 함수를 사용하려면
var add = require('./add.js');
console.log(add.add(1,2));
출처)http://www.slideshare.net/kazikai/nodejs-29836481
반응형