3

ジョブキューまたは並列処理のいずれかを介して、バックグラウンドで多数のプロセスを実行する方法を知っている人はいますか?

実行に時間がかかる多数のメンテナンス アップデートがあり、これをバックグラウンドで実行したいと考えています。

4

4 に答える 4

3

Gearmanサーバーをお勧めします。これは非常に安定していることが証明されており、完全に Symfony2 の外部にあり、サーバーを稼働させておく必要があります (ホスティング オプションが何であるかはわかりません) が、ジョブは完全に分散されます。最もスキニーなバージョンでは、すべてのジョブをメモリ内に保持するだけですが、sqlite データベースをバックアップとして使用するように構成できるため、何らかの理由でサーバーが再起動したり、ギアマン デーモンが壊れたりしても、再起動するだけでジョブが保持されます。 . 非常に大きな負荷 (1 秒あたり 1,000 のジョブを追加) でテストされていることを私は知っています。2 年前の経験から言えば、ZF アプリケーションで長時間実行されるタスクを Gearman を介してバックグラウンド処理にオフロードしました。以下の画像から、それがどのように機能するかは一目瞭然です。

ここに画像の説明を入力

于 2012-11-30T00:28:24.343 に答える
2

RabbitMqをチェックアウトします。knpbundles.com によると、これは最も人気のあるオプションです。

于 2013-07-03T14:54:10.417 に答える