カラクリサイクル

『輝かしい青春』なんて失かった人の雑記

開発用デーモンはforeverを使って管理すると便利

概要: Web開発に使うデーモンをnode.js製のforever使って管理してる


本日の小ネタ。

僕は、Web開発するときに、mongodbのデーモンとかを、node.js製の、

を使って管理していたりします。

このforeverですが、 元々の用途はnode.js製なサーバ類を管理するために作られたっぽいですが、 node.js製以外のデーモンもバッチリ管理でき、 まだデーモンを管理するのに、管理者権限がいらない! という点が気に入って使っています。

っていうか、開発とテスト用途でdaemontoolsとか使いづらいですし、 各UNIX系OSで使われるデーモン管理ソフトウェア(systemdとかlaunchd)は、 デーモン起動するのに管理者権限が必要だったり、 あるいはテストするときだけにデーモンを動かしたいのに、 一々システムディレクトリにファイル配置しなきゃならんとか、 結構めんどいんですよね。

で、その点foreverはコマンドラインで、 例えばPerlデーモンだと

$ forever -c perl start daemon.pl

という感じでデーモンを起動できるのでめっちゃ便利です。

また、バイナリのデーモンを動かしたいときは、

$ forever -c sh start daemon_runner.sh

という感じで、バイナリのデーモンを動かすシェルスクリプトを書いて、 それをforeverで起動してやれば良いだけなので、その点も便利です。

で、このforevernpmが使える環境であれば、

$ npm install -g forever

とコマンド一発でインスコできるので、その点も便利です。 ただ、node.jsnpmが使えるようにする必要がありますが。

ちなみに。

僕は環境が作ってあるのでforever使ってますが、 Perl使いであれば、kazeburoさん作成の、

を使うのも良いかもしれません。 Perl製だし、これもインスコ楽だし。

まあそんな感じで。

僕はforever使ってるって話でした。おわり。