Stark
Stark は、マルチプロセス デーモンとして PHP コードを実行するためのライブラリです。
必要
- PHP 5.3 以降
- POSIX 互換オペレーティング システム (Linux、OSX、BSD)
- PHP 用の POSIX および PCNTL 拡張機能
機能
使用法
必要なのはスクリプト ファイルと構成ファイル 1 つだけです。 php スクリプト ファイルはコールバック関数を定義します。 ini 設定ファイルはデーモンの環境を定義します。次のコマンドを使用してデーモンを起動できます:
php src/Stark/run.php -f [ini_config_file]
ログイン後にコピー
デーモン構成
- main.name : デーモンの一意の名前を指定する文字列
- main.host : 監視サーバーのバインド IP アドレスを指定する文字列
- main.port : 監視サーバーのバインド ポートを指定する整数値。
- main.working_dir : デーモンがログ ファイルとソケット ファイルを配置するディレクトリへのパス。
- run.script_file : コールバック関数を定義するファイル。
- run.memory_limit : バイトの PHP 短縮記法として指定されます (マニュアルを参照)。これは、memory_limitviaini_set として設定されます。
- worker.count : ワーカーの数を指定する整数値。
- worker.max_run_count : 実行の最大数。この数に達すると、ワーカーは毎回再起動されます。
- worker.max_run_seconds : 時刻に達した後にワーカーが再起動する最大時間を指定する秒単位の整数値。
- worker.max_idle_seconds : 最長アイドル時間を指定する整数値 (秒単位)。時間が経過するとワーカーが再起動します。
設定 ini ファイルの例:
[main]name = "config_1"host = "127.0.0.1"port = 9003working_dir = "/tmp"[run]script_file = "run_1.php"memory_limit = "1024M"[worker]count = 3max_run_count = 10000max_run_seconds = 3600max_idle_seconds = 60
ログイン後にコピー
コールバック ファイルの例:
<?php$g_count = 0;function run($worker, $data) { global $g_count; $g_count++; echo "Worker {$worker->index} current: {$g_count}\r\n"; usleep(100000);}
ログイン後にコピー
项目主页: http://www.open-open.com/lib/view/home/1436863173271