最近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では基本
[php]
‘php_path’ => ‘php’,
[/php]
のところを環境に合わせて変えてもらえば大丈夫です。
パスが通っていればそのままでもOK。

実際に使うときは
[php]
$background = \Background\Background::forge()
$args = array(‘arg1′,’arg2′);
$background->add_task(‘TASKCLASS:TASKMETHOD’,args );
$background->run();
[/php]
で出来るはずです。

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

 

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

  1. [...] fuelphpのバックグラウンドプロセスパッケージ | エンジニア開発記 [...]

コメントを残す

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

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>