
Restify 모듈
참조문서 : http://restify.com/docs/home/ Restify는 Express에서 파생된 nodejs REST 프레임워크이다. npm install restify 으로 설치한다. 1. Express와 뭐가 다른가? 물론 둘다 RESTful API 서버를 만들 수 있다. 차이점만 보자면, express는 웹 모듈로서 웹 애플리케이션을 위해 많은 기능(템플릿, 렌더링 등)을 제공한다. restify는 express에 비해 가볍고, express의 아키텍처를 그대로 가져오면서, REST API서버운영을 위한 특화된 기능들이 있다. 즉 RESTful API서비스만을 위한 경량 프레임워크이다. 성능차이는 크게 없는 듯하다. 여러 포스팅에서 성능테스트한 글을 확인했지만 express와 restif..
- JavaScript BackEnd/Node.js, Express
- · 2021. 3. 18.

Express 모듈
참조문서 : http://expressjs.com/en/4x/api.html express는 경량 HTTP 웹 프레임워크다. 요청과 응답, 미들웨어 사용, 템플릿 엔진을 제공한다. npm install express 로 설치한다. 1. 미들웨어 작은 단위 모듈로 요청과 응답을 처리하는 함수 형태 express는 여러 개의 미들웨어로 구성 미들웨어 사용 설정 : app.use([미들웨어]) 예제 app.use(function (req, res) { res.send('hello Express!'); }); 1-1. 미들웨어 설정(mount) app.use([path,] function [,function]) path를 생략하면 루트(/)이다. function을 2개이상 둘 수도있다. 즉 같은 요청을 여러개의..
- JavaScript BackEnd/Node.js, Express
- · 2021. 3. 18.

http 모듈
참조문서 : https://nodejs.org/dist/latest-v6.x/docs/api/http.html require('http'); 를 써야한다. nodejs는 자체적으로 http 서버를 갖고 있기 때문에, 아파치나 nginx 같은거 안써도 된다. 1. 개요 HTTP 서버 http.Server : HTTP 서버 http.IncomingMessage : HTTP 서버의 요청 메세지, Readable Stream 이다. http.ServerResponse : HTTP 서버의 응답 클래스 HTTP 클라이언트 http.Client : HTTP 클라이언트 http.ClientRequest : HTTP 클라이언트 요청 메세지 http.IncomingMessage : HTTP 서버의 응답 메세지, Reada..
- JavaScript BackEnd/Node.js, Express
- · 2021. 3. 18.

Node의 흐름 제어 (콜백지옥 탈출, Async, Promise)
1. 중첩 콜백 콜백지옥에 빠지기 쉬운 상황 task1 실행 이후에 task2,3,4 등이 순차적 실행 task1 실행 결과를 이용해 task2 가 실행 예제로 본다면 아래와 같은 상황이다. task1(a, b, function(err, result1) { task2(c, function(err, result2) { task3... task4... }); }); 2. Async 참조문서 : https://caolan.github.io/async/docs.html 외부모듈이기 때문에 npm install async로 설치한다. 행위 순서 제어 series(tasks[, callback]) : 각 태스크는 함수이고, 중간에 에러가 나면 다음태스크를 실행하지 않고, 완료 콜백으로 에러를 전달한다. result..
- JavaScript BackEnd/Node.js, Express
- · 2021. 3. 18.

npm
참조문서 : https://docs.npmjs.com/ NPM(Node Package Manager)은 패키지 매니저로 확장모듈 설치, 삭제, 검색, 정보, 패키지 정보 작성 등을 할 수 있다. 노드의 모듈시스템은 상호운용이 가능하도록 모듈을 생성하는 방법인 CommonJS 모듈 시스템을 본 따 만들었다. 1. 주요 옵션 npm init : 패키지 준비, package.json 생성 npm install : 패키지 정보에 있는 모듈 설치 npm install [Module] : 개별 패키지 설치 npm list : 설치된 모듈 목록 보기 npm info : 모듈 정보 npm search : 모듈 검색 npm update : 모듈 업데이트 npm uninstall : 모듈 삭제 2. 모듈 설치 의존성있으면..
- JavaScript BackEnd/Node.js, Express
- · 2021. 3. 18.

Node.js의 기초(내부 아키텍처, 이벤트루프와 워커, 비동기의 이해)
1. Nodejs 란? 2009년에 Ryan Dahl이 발표했다. 노드는 구글의 V8 JavaScript 엔진에 기반한다. 싱글스레드 기반 비동기 이벤트 위주 IO를 사용하는 고도의 확장성을 가진 시스템이다. 간단한 작업을 수행하지만 빈도가 높은 웹 어플리케이션에 이상적이다. 특징 싱글 쓰레드 : 문맥교환으로 인한 오버헤드X 비동기 IO : CPU time loss를 피함, io요청이 있으면 워커한테 던져놓고 쓰레드는 다른일을 계속 받는다. 이벤트 기반 : epool 또는 kqueue를 사용 경량 프레임워크 풍부한 라이브러리 : 각종 모듈 서버와 클라이언트에서 사용하는 언어(JS)가 같음 2. Nodejs 아키텍처 구글 이미지 검색에서 나오는 노드아키텍처들 중에 libev가 있는 건 옛날 사진이다. 노드..
- JavaScript BackEnd/Node.js, Express
- · 2021. 3. 18.
![[NodeJS - Server] 프로젝트 폴더 세팅하기](http://i1.daumcdn.net/thumb/C120x120/?fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FDakrk%2Fbtq0qA02B3X%2FAAAAAAAAAAAAAAAAAAAAALnSN3-u6-ajOBWBmwAQBo__eR9nv04A5DfAvFV00gF0%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1761922799%26allow_ip%3D%26allow_referer%3D%26signature%3D7I2P0HtEyTx63gU53rgC6DoKY78%253D)
[NodeJS - Server] 프로젝트 폴더 세팅하기
목록 설치하기 프로젝트 폴더 세팅하기 1) 프로젝트 폴더를 생성해줍니다. $ cd ~ $ mkdir app $ cd app 2) package.json 파일을 만들어줍니다. $ npm init (모두 엔터키 입력) $ vi package.json [수정내용] "start" : "node /home/node/app/index.js" 출처 : know-one-by-one.tistory.com/85
- JavaScript BackEnd/Node.js, Express
- · 2021. 3. 17.
[NodeJS - Server] 설치하기
목록 설치하기 프로젝트 폴더 세팅하기 1) 최신버전 사용을 위한 저장소 추가(setup_11.x, setup_12.x .... 버전에따라 셋팅해주면 됩니다.) # curl -sL https://rpm.nodesource.com/setup_10.x | bash - # sudo yum clean all && sudo yum makecache fast 2) 의존성 패키지 설치 # sudo yum install -y gcc-c++ make 3) node js 설치 # sudo yum install -y nodejs 4) 버전 확인 # node -v 5) 셀리눅스 보안해제 # setsebool -P httpd_can_network_connect 1
- JavaScript BackEnd/Node.js, Express
- · 2021. 3. 17.
(22) supervisor 를 사용해보자.
지금까지 app.js 파일의 내용을 변경하고나서는 매번 node app.js 라고 커맨드창에 입력하여 재실행해줬다. 만약 supervisor 모듈을 사용할 경우에는 app.js 파일의 내용을 수정하더라도, 다시 재시작을 하지 않고도 자동으로 재실행 되게 할 수 있다. npm install supervisor -g 를 입력하여 설치해주자. node app.js 로 실행시키지않고,supervisor app.js 로 실행시켜주자. app.js 파일을 열어서 수정한 후에 save 시켜주면,자동으로 서버가 재시작 되는 것을 확인 할 수 있다. 출처: https://sourceflower.tistory.com/22?category=561762 [소스플로우]
- JavaScript BackEnd/Node.js, Express
- · 2019. 4. 3.