fuelphpのバックグラウンドプロセスパッケージ

最近fuelphpでパッケージ化にはまっています。 最初に作ったパッケージがこれ。 https://github.com/9wick/fuelphp-background 結構マニアックかなと思いますが、バックグラウンドでプロセスを走らせるパッケージです。 メルマガもどきを作らなきゃいけなくなって、調べたら1通/sec以上の速度で送るのはスパム扱いされるからやめたほうがいいと。 でもタイムアウトは60秒だし、100通ぐらいは送りたいし・・・・ということで裏で動かすことにしました。 fuelphpにはtaskというものがちょうどあるので、task限定で裏でプロセスを起動させるようにしました。

つかいかた

一般的なpackageと同じだと思いますが、一応使い方を。

  1. DLしたbackgroundフォルダごとfuel/packagesフォルダに入れる
  2. fuel/packages/background/config/background.phpをfuel/app/config/background.phpにコピー
  3. fuel/app/config/background.phpの設定を変更
  4. fuel/app/config/config.phpでalways_loadのpackagesにbackgroundを追加

configでは基本

1
'php_path' => 'php',

のところを環境に合わせて変えてもらえば大丈夫です。 パスが通っていればそのままでもOK。 実際に使うときは

1
$background = \\Background\\Background::forge() $args = array('arg1','arg2'); $background->add_task('TASKCLASS:TASKMETHOD',args ); $background->run();

で出来るはずです。 win7+WAMPの環境でしか試してないので、不具合があったら教えて下さい。 明日も作ったパッケージの記事を書きます!