数十台のマシンの分散ビデオエンコーディングクラスタを構築しようとしています。以前はメッセージング・キューを使ったことはありませんでしたが、私が始めたのはGearmanとBeanstalkdでした。分散ビデオエンコーディング - Gearman vs Beanstalkd
Beanstalkは、Gearmanよりもはるかに簡単で使いやすいと思われますが、豊富な機能ではありません。
私が理解していないことは、どのようにすべてのサーバーに新しいワーカーを育てるのですか?私はPHPを使用する予定です。 CLIでworker.phpを "&"で実行するだけで簡単ですか?仕事を待っていますか?
ジョブが完了した後、gearmanが実際にプロセスを強制終了しないことに気付きましたが、Beanstalkはそうしています。したがって、すべてのサーバーのすべてのジョブの後でスクリプトを再起動する必要があります。
現在豆の木を使用してイムは、より傾斜、私は計画的なものの一般的な流れをした
ラン実行されている労働者の事前定義された量があるかどうかをチェックし、各サーバー上で細かくcronを。それ以下であれば、新しいワーカープロセスを生み出すことができます。各プロセスはおよそ2〜30分かかります。
おそらく私はここに私の論理に欠陥がありますか?これを行う「より良い」または「適切な」方法は何かを教えてください。
Pheanstalkを必ずチェックしてください:https://github.com/pda/pheanstalk –
私の考えは否定できないが、これらの2つのメッセージングフレームワークのどちらを使っても、「サーバー」はどこにインストールされますか?オフロードされたプロセスを処理するリモートマシン、またはリモートマシンに新しいジョブを通知するマシンでは、 – ariestav
これらのサービスを使用するには高価すぎます。 –