Nodejs
-
pm2를 활용한 클러스터링 :: 마이구미Nodejs 2016. 7. 26. 10:50
이번 글에서는 pm2를 활용해 클러스터링을 해보자.먼저, 이전에 작성한 글을 읽어보고 오는 것이 좋다.죽지 않고 유지하는 pm2 사용법을 알아보자 일단 모듈을 설치하자. npm install clusternpm install httpnpm install os 기본적인 클러스터 예제이다. var cluster = require('cluster'); var http = require('http'); var os = require('os'); var numCPUs = os.cpus().length; if (cluster.isMaster) { // Master: // Let's fork as many workers as you have CPU cores console.log(numCPUs); for (var i..
-
죽지 않고 유지하는 pm2 사용법 :: 마이구미Nodejs 2016. 7. 2. 15:14
이번 글은 Node.js에서 사용할 수 있는 프로세스 관리자 모듈을 알아보겠다.크게 모듈에는 Strongloop, PM2. Forever 세 가지가 있다.Forever는 나머지에 비해 다소 기능이 떨어진다. 소규모 프로젝트에 어울린다.이번 글에서는 PM2를 다룰 예정이다. Node.js 웹서버를 실행하기 위해서는 대부분 node 명령어를 사용한다. $ node 노드 실행 시 오류가 있으면 프로세스는 중단된다. 또한 종료하여도 중단된다.그래서 한번이라도 사용해봤다면 이런 생각은 한번쯤 했을 것이다.그렇다면 어떻게 톰캣처럼 서버가 계속 중단되지 않고 실행될까?그때 이용하는 모듈이 PM2이다. $ npm install pm2 먼저 npm를 이용하여 pm2를 설치한다.끝이다. 이제 pm2 명령어들만 알면 된다...
-
euc-kr 문제 해결을 위한 iconv :: 마이구미Nodejs 2016. 6. 17. 19:47
이번 글은 Node.js 모듈 iconv에 대해 알아보자.본인의 경험을 토대로 글을 써보겠다.본인은 cherrio를 활용하여 네이트 페이지를 크롤링을 시도했다.살짝 잘 가져오는 지를 확인하기 위해 크롤링을 시도해보았다. 기본적인 예제다. 문제 없는 코드이다. 하지만 예측하지 못한 결과가 나왔다. 문자가 깨진 상태로 출력되었다.그 이유는 utf-8이 아닌 euc-kr을 쓰는 페이지였다. 이러한 경우 iconv을 쓰면 간단히 해결 가능하였다. $ npm install iconv 혹시나 본인이 경험했던 iconv 모듈 설치 시 에러가 뜨는 경우가 있을 것이다.아래를 보자. node-gyp 관련 문제이다.자세히 알아보기 위해 문서를 보자. npm 사이트에서 node-gyp 문서의 Installation을 확인해..
-
nodejs를 이용해 데이터베이스에 삽입하기(객체배열)Nodejs 2016. 6. 12. 17:20
이번 글은 ajax를 활용해 DB에 삽입하는 과정을 살펴보겠다.역시나 javascript, nodejs를 사용한다. 예시의 흐름은 이렇다.클라이언트 쪽에서 객체배열을 ajax를 post 형식으로 서버로 전달하여 db에 삽입할 것이다.객체배열은 이러한 형태이다. [ { a : 'a1', b : 'b1' }, { a : 'a2', b : 'b2' }, {......} ] 시작해보자.간단히 ajax를 이용할 함수를 만들겠다.function send_nodeDB(){ var data = [{},{}....]; //ArrayObject $.ajax({ type:"POST", url:'http://182.161.117.18:8888/db', data: JSON.stringify(data), contentType: ..