skillup

技術ブログ

サーバー・ネットワーク

supervisorによるデーモン化

投稿日:

えー実務で任意のプログラムをデーモン化させて処理をするという実装があったのでメモ。

デーモンとは?

よく聞くデーモンですが、ものすごく簡単にいうと「常駐化させるプログラム」のことです。httpdなどのように一番最後はdをつけるのが一般的なようです。

参考リンク

デーモンとは

Supervisor

任意のプログラムをデーモン化させるソフトとしてはSupervisorというソフトが有名です。

Supervisorで簡単にデーモン化

インストール

pythonでも入るようですが、自分はyumで入れました。

CentOS6系

また設定ファイル(/etc/supervisord.conf)も見ていきましょう。

/var/wwww/html/hogehoge.phpを常駐させるプログラムだとします。

なおprogram:プログラム名の設定自体は/etc/supervisord.dのなかに入れる方が一般的かもしれません・・・(通常のapacheなどと同様の書き方です。)

設定ファイルに関しては下記を参考に。

DIARY Supervisor の始め方とポイント

Monitoring a PHP process example with Supervisor

なお下記のような項目も設定項目の中にありますが、webからの設定画面なので省いても構わないと思います。

実行プログラム

なお実行する側のプログラムは

  • ループ性がある
  • 単純なループだと負荷がかかるのでsleepなどを入れる

などすると良いと思います。

常駐対象のプログラム(上記例でいうと/var/www/html/hogehoge.php)

サービスの開始・停止・確認

この状態で

でスタートです。

ログをみて下記のようになって入ればOKです。

実行中にプロセスのステータスを確認すると下記のようになります。

ちなみに停止時は

で止まります。

-サーバー・ネットワーク
-,

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

php-fpmトラブル(nginxが競合?)

php-fpmが急に停止になるトラブルがあったので、ちょっとメモ。 php-fpmを再起動しようとしても下記のようなエラーが・・・

p …

no image

vimの設定に関して

今の開発ではほとんどeclipseを使っていますが、プログラミングをやり始めてから2年ぐらいはずっとgvim(vimのGUI版)でした。 別にこだわりがあったわけではないんですけどね。 最初にならった …

no image

Azureの復習

今年からAzureの案件にはいっていろいろとインフラ周りを整理しておりますので、復習も兼ねて少しまとめておこうかと思います。 とりあえず出てくる重要な概念やサービスを五月雨に・・・ Contents1 …

no image

laravel+vessel

現場のリーダー的な方に進められてVesselというDockerのインストールなどをサポートするツールを触ってみました。 特にlaravelのインストールなどに向いていますが、laravelでなくとも使 …

no image

linuxでのherokuのインストール&パスの通し方

linuxでのherokuのインストールやパスの通し方について 原則としてruby入ってないとダメっぽいです。(しかもruby1.8系だと2016年6月現在エラーが出ますので最新バージョンをインストー …

アーカイブ