서버
-
MongoDB와 Node.js서버/Node.js 2017. 11. 25. 18:25
MongoDB와 Node.jsNoSQL과 Node.js는 처음부터 궁합이 잘 맞는 존재였다. NoSQL같은 경우, 관계형 데이터베이스의 Join 위주의 SQL 사용을 지양한다. 정형화된 테이블 구조 역시 필요하지 않으며 대부분의 '관계'를 1개의 데이터셋 안에 '키-값'의 쌍 형태로 넣어, 수평적으로 확장하기 위해 설계되었다. 이러한 특성은 이벤트 기반의 비동기식 데이터 처리를 통해 대량 트랜잭션을 신속하게 처리하기 위한 Node.js의 습성과 잘 맞아 떨어진다. NoSQL의 '키-값' 형태의 데이터 저장소는 비정형의 세션정보 저장에 적합하며, 짧은 응답 속도를 제공할 수 있다. 예를 들어 로그인하는 사용자의 프로파일 저장소를 생각해보자. 사용자 아이디, 사용자 기본 정보, 다중 아이디 등을 '키-값' ..
-
MVC 흐름서버/Node.js 2017. 11. 25. 17:11
MVC(Model - View - Controller) 패턴은 웹 어플리케이션을 제작할 때 편리함을 가져다 준다. Pug(구 Jade) 템플릿을 활용하여 이를 구현해보도록 하자. $ express pug todoBoard // express [원하는 template] [dir]$ cd todoBoard$ npm install // express에 필요한 기본 모듈들이 설치$ npm start // 서버를 시작하고 localhost:3000으로 접속해 간단한 결과를 확인 가능 이런 순서대로 콘솔 창에 입력하면 express를 이용해 웹 어플리케이션을 만들 간단한 준비가 끝났다. express를 통해 만들어진 폴더의 목록을 보면 views, bin, routes, public, app.js 등이 존재한다. ..
-
모듈 알아보기서버/Node.js 2017. 11. 17. 20:48
HTTP ModuleHTTP 모듈은 Node.js를 시작할 때 가장 먼저 접하게 되는 모듈로써 이에 대해 공부하면 후에 큰 도움이 될 것이라고 확신한다.그렇다면 본격적으로 HTTP 모듈에 대해 공부해보자. The Built-in HTTP 빌트 인(built-in)하는 방식은 require( ) 메소드를 사용한다. var http = require('http'); Node.js ad a Web ServerHTTP 모듈은 createServer( )메소드를 통해 HTTP 서버를 만들 수 있다. req는 request를, res는 response를 의미한다. var http = require('http'); //create a server object: http.createServer(function (req..
-
Chapter3. 익스프레스 건드려 보기서버/Node.js 2017. 11. 17. 15:45
1. 스캐폴딩새 프로젝트를 시작하거나 혹은 PPT를 만들 때, 매번 처음부터 뼈대가 되는 '템플릿'코드를 작성하거나, 만드는 사람은 극히 일부분일 것이다. 대부분은 기본 틀을 만들어두고, 프로젝트를 시작할 때마다 여기서 수정하는 방식을 이용한다. 이러한 아이디어를 '스캐폴딩'이라고 한다. 루비 온 레일즈에서는 자동으로 스캐폴딩을 생성하는 프로그램을 만들었는데, 이는 기존의 템플릿 컬렉션 중에서 선택하는 것이 아닌 직접 세련된 프레임워크를 생성할 수 있다는 큰 장점을 지니고 있다. 익스프레스는 루비 온 레일즈의 아이디어를 받아들여, 프로젝트를 시작할 때 스캐폴딩을 만드는 유틸리티를 제공한다. 다만 우리가 배우는 과정에서는 익스프레스의 스캐폴딩 유틸리티가 뛰어나지도 않으며, 직접 해보는 것에 초점을 맞추고 ..
-
Chapter2. 웹 서버 만들기서버/Node.js 2017. 11. 15. 13:12
본격적으로 node를 이용하여 웹 서버를 만들어 보자. 진행하기에 앞서 localhost에 대해 설명할까 한다. localhost란? localhost는 이름에서 알 수 있듯이 현재 자신이 사용하는 컴퓨터를 의미한다. 이 이름은 IPv4 혹은 IPv6 루프백 주소에 흔히 쓰는 별명이라고 생각하면 된다. 만약 SSH 등을 통해 원격 컴퓨터에 연결한다면, localhost는 그 컴퓨터가 아닌 자신의 컴퓨터임을 염두하자. 1. Hello WorldSublime text 3를 열어 다음과 같은 내용의 helloWorld.js 파일을 만들자. 이해를 돕기 위해 각 문단에 대해 설명하자면1) require는 모듈을 불러오는 문법이다. import와 비슷하다고 생각하면 이해가 쉽다. 3) http.createServ..
-
Chapter1. 노드 시작하기서버/Node.js 2017. 11. 15. 00:27
본격적으로 node.js에 대해 공부를 시작해 볼까 한다. 이를 배우는 데 필요한 개념이 있다면 지속적으로 업데이트 하도록 할 것이다. 1. 노드 설치 노드를 설치하기 위해선 다음과 같이 3단계를 진행하면 된다. 1. 노드 홈페이지(http://nodejs.org)로 접속한다. 2. INSTALL이라 적힌 녹색 버튼을 클릭한다. 3. 지시하는 대로 따라한다. 그림과 같이 Node홈페이지에 들어가면 두 가지 버튼이 존재한다. 나의 경우엔 안정적이고 신뢰도가 높은 8.9.1 LTS 버전으로 다운을 받았다. 만일 리눅스 사용자라면 패키지 관리자(http://bit.ly/1GBz8YS)를 사용하는 편이 더 효율적이라고 한다. 노드 설치과정에서 막혔거나 어떤 이유로 노드를 처음부터 컴파일하고 싶다면 공식 설치 가..