beanstalkd [ http://kr.github.com/beanstalkd/ ] を使用することをお勧めしますか?
PHPでの非同期処理?
このライブラリを使用したことがある人からのフィードバック/コメントの賛否両論が必要です。
ありがとう、
beanstalkd [ http://kr.github.com/beanstalkd/ ] を使用することをお勧めしますか?
PHPでの非同期処理?
このライブラリを使用したことがある人からのフィードバック/コメントの賛否両論が必要です。
ありがとう、
私は実稼働環境で Beanstalk を使用しており、テスト中に何百万もの単純なメッセージを投げましたが、一般的には大量でしたが、実稼働システムでは、私が会社を辞めるまでに 100,000 を超えるタスクが処理されていました。それはまだ実行されている可能性があり、その場合、私が計画したように、さらに使用を拡大していれば、今では数千万、またはそれ以上になるでしょう.
良い点が多いのでオススメです。
私が最初に行ったタスクは画像処理でした。Apache/mod_php プロセスの外でその作業を行うことで、サーバーに影響を与えずに (Web サーバーを吹き飛ばして) 大きな画像のサイズを変更することができました。負荷の軽いキューでは、アップロード後にページが更新される前にサムネイルが作成されていました。
非同期で処理できるタスクは他にもたくさんあります。
私がこれまでに経験した唯一の問題は、ワーカーが問題なく完了したことを確認すること、またはジョブが「埋められる」ようにエラーをキャッチして、ジョブがキューに戻されて再度実行されないようにすることでした(そしてワーカーを再びクラッシュさせます)。
PHP は長時間実行されるプロセスにはあまり適していないため、ワーカーを再起動してメモリをクリアすることも役立ちます。