php-resque は、シンプルな機能設計と柔軟な構成を備えた、Redis ベースの軽量バックグラウンド タスク システムです。大規模で総合的な MQ システムと比較して、これは小さくて美しく見えます。
#php-resque 役割分割
モードのバックグラウンド デーモン モードで実行されます。
#次の場合は
##install
composer config -g repo.packagist composer https://packagist.phpcomposer.com
Composer : このパッケージは放棄され、維持されなくなりました。作者は、代わりに resque/php-resque パッケージを使用することを提案しています。
composer require "chrisboulton/php-resque 1.2"ログイン後にコピー新しい拡張機能パッケージに更新されました:
resque/php-resque
composer require resque/php-resque
ジョブの書き込み
DemoJob.php<?php class DemoJob { public function perform() { // Work work work //echo $this->args['name']; } }
エンキュー操作
<?php Resque::setBackend('localhost:6379'); $args = array( 'name' => 'hanmeimei', ); Resque::enqueue('default', DemoJob::class, $args);
ワーカーコード
resque-worker.php<?php $redis_dsn = '127.0.0.1:6379'; putenv("REDIS_BACKEND=$redis_dsn"); // 引入队列的入口程序 $resque = realpath(dirname(__FILE__) . '/vendor/chrisboulton/php-resque/resque.php'); require_once $resque;
ワーカーを開始するための環境変数
php resque.php & を使用します。
QUEUE=counter php resque-worker.php
これで、php-resque のインストールと使用が完了しました。
次の章はツール プラグインであり、参照のみを目的としています。
#Interfaceresque-web
インストールgem install resque-web -v 0.0.8
実行
resque-web -p 40000
スーパーバイザー
サービスの開始/usr/bin/python /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
プロジェクト構成のモニタリング
/etc/supervisor/conf.d/lumen_resque.conf[program:worker_lumen_resque] directory=/home/wwwroot/mysite command=php resque-worker.php environment=QUEUE='default'
利点:
プロジェクトの設定後に自動的に再起動するようにプログラムを構成できます。異常終了
ユーザーを実行するプログラムを指定します
##プロセス数を設定できます以上がphp-resque: Redis ベースのバックグラウンド タスク システムの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。