nodejsスクリプトをデーモン化するforever

前回のnode-devもですが、寄り道して見つけたのってすぐ忘れそうなのでメモ。
foreverはnodejsスクリプトをデーモン化するツール。
死活監視して死んでいたら再起動してくれる。

1.npmでインストール

$ npm install forever -g

2.foreverコマンドでアプリを起動

$ forever start app.js
info:   Running action: start
info:   Forever processing file: app.js

forever --helpで見た限りでは一般的な操作感。
稼働しているスクリプト一覧。稼働時間も見れていいかも。

$ forever list
data:       uid  command script      forever pid   logfile                 uptime      
data:   [0] QEn5 node    app.js 29253   29254 /user_name/.forever/QEn5.log 0:0:0:2.492 

指定したスクリプトを停止

$ forever stop app.js 

稼働している全てのスクリプトを停止

$ forever stopall

などなど。
オプションも色々あって
-m で起動する回数が指定できたり
-l でログの出力先ファイルが指定できました。

$ forever start -l /var/log/forever.log -m 2 app.js

ちなみに-mは1を指定すると最初の起動もカウントされていて、
次回停止時に再起動はされません。

nodejsからAPIとしても使えて
他の言語で書いたスクリプトをデーモン化するなどできるようです。

あとで死活監視はどうやってるのか見てみないと。
使った感じはリアルタイムだったのでプロセスが死んだら
トリガーみたいなの走るのかな?
nodejsでロードバランサーを作る記事を見かけたので
foreverと組み合わせたらいいかも。