Node.js 개요, Hello node, ENIDE(eclipse) 설치, 설정
Node.js 서버사이드 프로그래밍
- 2009년 2월 Ryan Dahl의 TCP라이브러리와 HTTP서버를 만드는 개인 프로젝트에서 시작
- 2015년 9월 Node 4.0 발표
- Chrome의 자바스크립트 엔진인 V8을 서버사이드에 설치해서 독립 서버 구성
- 싱글 쓰레드의 이벤트 기반의 non-blocking I/O사용하여 고도의 확장성
- 간단한 작업을 수행하지만 접근 빈도가 높은 웹 어플리케이션에 적합
Node의 특징
1) 이벤트 기반의 non-blocking I/O : 비동기와 콜백함수 등록 처리
2) 싱글스레드 : 자원을 효율적으로 사용, 교착상태, 동기화 문제 X, 비동기함수 내부적으로 멀티스레드로 처리
3) 자바스크립트로 개발 : 쉽고, 널리 알려져있고, 비동기 코드에 익숙하고, front & back 모두 통일
4) 다양한 확장모듈 : high-level API, npm(node package manager)을 통한 간단한 확장 모듈 관리
Node의 설계
- 플랫폼의 I/O를 직접 실행하지 않음
- 디스크, 네트워크, 다른 프로세스 정보 받을 때 반드시 콜백함수 이용
- Low-level API만 지원
- DNS, HTTP, TLS등 주요 프로토콜 지원
- 플랫폼 독립적
Node 아키텍처
기본 라이브러리
암호화, TCP/UDP 통신, HTTP 통신,
클러스터링 등의 기능을 자바스크립트
함수로 제공
Node 개발 환경
- http://www.nodeclipse.org/updates/
- http://www.oracle.com/technetwork/java/javase/downloads/
[workspace 폴더 설정]
window- preferences - general - content type - text - html - add - *.ejs
window- preferences - general - content type - text의 Default encoding : UTF-8 - Update
window- preferences - general - Workspace - encoding : UTF-8
window- preferences - CSS Files, HTMLFiles - encodeing UTF-8
window- preferences - HTMLFiles - Web Resources - 다 Ignore
window- preferences - JavaScript - Code Style - Formatter - New - 'javascript' - Indentation size:2 Tab size:2
window- preferences - general - Appearance - Colors and Font - bagic - Text font
[Hello node]
File - New - nodejs Project - 'nodeweb' - hello world Template - 'hello-world-server.js'우클릭 - Run As - Node Application
localhost:1337에서 확인
'Development > WEB' 카테고리의 다른 글
MongoDB에서 데이터 가져와서 template 뷰와 바인딩 (0) | 2017.03.06 |
---|---|
MongoDB 테스트 데이터 생성 스크립트 (0) | 2017.03.06 |
ejs-locals 모듈로 head, header, layout, footer 구성하기 (0) | 2017.02.20 |
mongodb client로 연결, db데이터 (0) | 2017.02.14 |
express, ejs, nodemon 설치, Hello express (0) | 2017.02.13 |