'실행'에 해당되는 글 2건

web/node.js

node.js 애플리케이션 프로세스 관리 도구 매니저

PM2 built-in 되어있는 Load Balancer 함께 node.js 애플리케이션의 runtime and process 관리 기능을  제공해 주는 라이브러리이다. PM2를 이용하여 application 죽지 않고 돌아갈 수있게 watch 기능을 제공해주는 기능도 제공한다.

그리고 error.log, info.log, 자원 점유 등등 여러 기능을 제공해준다.

간단하게 설치부터 사용법에 대해 정리해보자.


설치
$ npm install pm2 -g


실행방법
$ pm2 start app.js


사용법은 아주 간단하다. 위와 같이 command로 프로그램을 실행할 때 여러 옵션도 줄 수 있다.

1
2
// wedul_app.js 를 max_space_size를 500으로 지정하고 실행하라.
pm2 start wedul_app.js —node_args=“—max_old_space_size=500”
cs


두 개 이상의 옵션도 부여할 수 있다.

1
2
// max_space_size와 harmony(es 2015 옵션)를 둘다 사용.
pm2 start wedul_app.js --node-args="--max_old_space_size=500 harmony"  
cs


하지만 실제 운영 에서는 옵션이 한두가지가 아니기 때문에 계속 command로 설정을 지정 하기에는 부담이 된다. 

그래서 별도의 json 파일에 옵션값들을 정의할 수 있다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
  "apps": [
    {
      "name": "wedul_batch",
      "script": "./batch/index.js",
      "watch": true,
      "node_args":"--harmony",
      "env": {
        "NODE_ENV": "development"
      },
      "env_production": {
        "NODE_ENV": "production"
      }
    },
    {
      "name": "wedul",
      "script": "./bin/www",
      "watch": true,
      "node_args":"--harmony",
      "env": {
        "NODE_ENV": "development"
      },
      "env_production": {
        "NODE_ENV": "production"
      }
    }
  ]
}
cs


위의 옵션은 각 실행시키고자 하는 애플리케이션의 이름과 위치 그리고 옵션등을 지정할 수 있다. 

위와 같이 설정하고 아래 명령어로 실행시킨다.

 pm2 start pm2test.json --name wedul_batch --env development

이렇게 실행하면 pm2test.json 옵션에 맞게 실행이 된다.( --env 옵션을 사용하면 이전에 공부했었던 process.env.NODE_EVN 전역변수값을 사용할 수 있다.)

이렇게 모든 설정을 하고 실행하면 다음과 같은 화면으로 실행된다.

그리고 더 여러 기능들을 제공하는데 그 중 몇가지만 살펴보자.


# detail (특정 애플리케이션 현재 상태 확인)

1
pm2 show [appname]
cs



# 실시간 로그 및 자원 현황 모니터링

1
pm2 monit
cs


#로그 확인

1
pm2 log [appname]
cs


  1. BlogIcon node 편집답글

    watch로 소스코드 변경 후 재시작 기능도 확인할 수 있어요.
    http://pm2.keymetrics.io/docs/usage/watch-and-restart/

  2. node 편집답글

    cluster기능을 통해 싱글 코어에서 이벤트 루프를 받던 방식을 멀티 코어로 바꿀수도 있어요

하이브리드/아이오닉

하이브리드 앱 소개 및 아이오닉 소개, 설치 방법

하이브리드 앱

-> 웹 기술을 통해 앱을 개발하여 다양한 OS에 지원되는 앱을 칭한다



하이브리드 앱과 네이티브, 웹앱 비교

네이티브 앱

장점 : 빠르다, 네이티브 API 사용의 편의성

단점 : 언어의 제약, 플랫폼 한정적


웹앱

장점: 유지보수의 편리성, 크로스 플랫폼

단점 : 네이티브 액세스 못함


하이브리드 앱

장점 : 웹개발과 동일하여 개발의 연속성, 크로스 플랫폼

단점 : 성능이 느리다. (저사양 기기에서 호환안됨, 최저 OS 버전 필요)




아이오닉 소개

아니오닉

-> 웹 사이트와 웹 애플리케이션 개발에 사용했던 html, css, javaScript 등을 그대로 사용할 수 있게 해주는 도구와 유틸리티의 모음

-> AngularJS를 사용하여 웹 애플리케이션을 지원

-> 사용자 인터페이스와 UX를 지원

-> CLI 환경에서 명령어 사용을 통해 조작


코르도바

->플랫폼과 애플리케이션 사이의 브릿지를 생성하기 위한 도구이며, 설치 가능한 네이티브 앱을 만들어 준다.

 

 
개발환경 구축

-> node.js 설치하여 onic CLI 설치, 코르도바 설치

-> npm install -g cordova ionic



푸터바

알림

이 블로그는 구글에서 제공한 크롬에 최적화 되어있고, 네이버에서 제공한 나눔글꼴이 적용되어 있습니다.

카운터

  • Today : 18
  • Yesterday : 371
  • Total : 93,047