분류 전체보기
-
puppeteer를 Ubuntu에 설치하고 기동하기설치&설정 관련 2019. 5. 26. 15:10
puppeteer를 설치하고 구동하기 설치는 아주 간단하다. npm 을 이용해서 설치 하면 바로 되는데, 문제는 설치후 기동하면 오류가 난다. # 설치 npm install --save puppeteer # 실행 node app.js # error 발생 에러 메시지에서는 puppeteer troubleshooting를 보라고 하지만, 내게 도움되는 내역이 없었다. 구글의 도움을 받아 찾은 puppeteer not working on Ubuntu 16.04 but works on 14.04에서 다음 라이브러리를 설치하라는 메시지를 확인하였다. sudo apt-get install libpangocairo-1.0-0 libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 ..
-
crt, key 인증서 파일 pem으로 변환설치&설정 관련 2019. 5. 26. 15:08
cert, key 파일을 pem 파일로 변환 하기 nginx에서 사용하던 인증서를 nodejs에서 바로 사용을 하기 위해 pem 파일 형식으로 변경 해야하는 일이 생겨서 검색을 해보았다. 파일 형석의 변환은 다음과 같이 쉽게 할 수 있다. # key 변경 openssl rsa -in server.key -text > private.pem # crt 변경 openssl x509 -inform PEM -in server.crt > public.pem추가 팁] nodejs 에서 https 설정 nodejs에서 https 사용을 위해서는 https 모듈을 추가로 설치 해야 한다. 이후 소스내에 다음과 같이 인증서를 options을 추가 하면 된다. const https = require('https..
-
MongoDB backup & restore설치&설정 관련/MariaDB & Mysql 2019. 5. 26. 14:50
MongoDB backup & restore 간단하게 몽고 디비 백업과 복구를 해보겠다. 먼저 백업 명령은 다음과 같다 # 결과로 디렉터리가 생성 된다. # 특정 collection 명이나 DB 명을 Backup 할 수 있다. $> mongodump --collection words --db TEST --out ./다음은 복원 하는 방법이다. # 특정 컬렉션만 복원 할 수 있으며 --drop 옵션을 추가 하면 삭제하고 복원 한다. $> mongorestore --host 172.30.10.1 --port 27017 --db TEST --collection words --username tester --password 'password' ./TEST/words.bson --drop가끔씩 쓸일..
-
AWS LAMBDA를 이용해서 개발하다설치&설정 관련 2019. 5. 26. 14:46
AWS LAMBDA 를 개발시 알면 좋은 팁 Lambda를 API Gateway를 통해서 호출 하도록 설정 할때 매핑 템플릿 을 사용하면 IP 등의 정보를 얻을 수 있다. Lambda에서 RDS에 접근하기 위해서는 VPC를 설정해야 한다. VPC가 설정된 Lambda는 외부 인터넷에 접근 할 수 없다. VPC가 설정된 Lambda는 내부 private IP만 접근 할 수 있다. 다시 사용할 일이 올지는 모르겠지만, 재미있었다. 신기술은 늘 어렵다. 근데 써보고 나면 별거 없다. 참고 자료 API Gateway 매핑 템플릿 참조 Running AWS Lambda Functions in a VPC and Accessing RDS
-
Async 모듈을 이용한 비동기 처리NodeJS 2019. 5. 26. 14:46
얼마전 Node에서 비동기 처리를 순서대로 처리해야 하는 일이 있었다. 구글을 검색하다 async.waterfall in a For Loop in Node.js을 찾았다. var async = require("async") var users = []; // Initialize user array or get it from DB async.forEachLimit(users, 1, function(user, userCallback){ async.waterfall([ function(callback) { callback(null, 'one', 'two'); }, function(arg1, arg2, callback) { // arg1 now equals 'one' a..
-
nodejs에서 request Body에 json 처리 & body 크기 제한NodeJS 2019. 2. 6. 16:29
Express에서 post호출 시 request의 body에서 undefined가 발생한다.다음과 같이 호출 했는데 결과가 undefined일 경우는 body-parser를 설정하지 않아서 이다.# post 호출시, body에 {test:'hello"} 를 함께 전송 #router 소스 router.post('/', (req, res) => { console.log(req.body); undefined 발생 res.redirect('/'); }); 처리 방법은 body-parser를 express에서 사용하도록 설정 하면된다.# body-parser 설치 $> npm install --save body-parser #app.js 소스 const express = require('express'); con..
-
Node 모듈 설치시 오류시 해결 방법NodeJS 2019. 2. 6. 16:29
Node 모듈 설치시 오류시 해결 방법node 버젼이 변경된 상태에서 npm install을 하면, 오류가 발생하는 경우가 있다.이럴때 해결 방법은 정말 단순 하다.해당 모듈을 삭제 하고 재설치 한다.npm install #oracle-db 모듈 오류발생 #oracle-db 모듈 삭제 npm uninstall oracle-db #oracle-db 모듈 설치 npm install --save oracle-db 컴터 동작이 이상하면 재기동 하면 되듯이, 모듈도 재설치 하면된다.
-
pm2 cluster mode 특징NodeJS 2019. 2. 6. 16:29
pm2 cluster mode에서는 session이나 websocket이 동작 하지 않는다.pm2에서 제공하는 클러스터 모드는 코드의 수정 없이 CPU를 확장할 수 있다. Node.js 클러스터 모듈을 사용하여 확장 된 응용 프로그램의 하위 프로세스가 자동으로 서버 포트를 공유 하도록 하는 기능이다.사용법은 다음과 같다.# -i 옵션이 cluster 모드이며, max는 사용할 CPU 수를 입력 하면 된다. # 0을 입력하면, 자동으로 모든 CPU 숫자만큼 클러스터가 생성된다. pm2 start app.js -i max 또는 js/yaml/json 파일을 통해서 설정을 할 수 있다.{ "apps" : [{ "script" : "api.js", "instances" : "max", "exec_mode" : ..