私はDockerでCeleryとRabbitMQ Gunicornを実行しています。Celeryはどのように新しいノードを発見しますか?
私の質問はこれです:私はセロリが分散処理用に設計されていることを理解しています。私が全くドキュメントを見ていないのは、同じLAN上に複数のマシン/ノードがあると仮定すると、どうやってお互いを発見するのでしょうか? RabbitMQは役割を果たしていますか?セロリのインスタンスはどういうわけかお互いを発見しますか?どこか適切なホストのリストはありますか?もしそうなら、どのように編集すればいいですか?
また、HTTP要求を処理するノードを1つだけ使用すると仮定しても、すべてのノードでgunicornを実行する必要がありますか。私はこれを尋ねます。なぜなら、ガンコーン開始コマンドでは、それは労働者の数の設定を持っているからです。また、この設定はそのノードにのみ適用されるか、または接続されたすべてのノードの最大合計として適用されますか?
編集: 最初の回答の後、私はこの作業を開始しました。私はドワーサーを使用して解決策を立てていることを明確にすべきであり、通常の群設定がうまくいかないことがわかります。もし私がその道を行くなら、少し違うものを使うこと。
明確にする:私は別のホストにセロリのワーカーを追加し、システムの容量を増やすために「メイン」ホストと通信できるようにする必要があります。誰かがこれを達成するための明確なプロセスやそれへのリンクを提供することができれば、最も役立つだろう。
私はこれを明確に表現していただきたいと思います。詳細情報が必要な場合はお知らせください。
ありがとうございます!
こんにちは、こんにちは、答えのおかげで、私は以前よりもずっと多くのことを知っています。私はしかし、いくつかの明確な質問があります。 「ホストのリストを追加する必要はなく、作業を「自動検出」するだけで、起動してキューと話すことができます。どうすればいいですか?それは私の元の投稿の基本的な本質です。私はどこかセロリインスタンスに伝えています。どのファイルですか?私はフォローする必要がある特定の形式はありますか?私はあなたが掲示したリンクをチェックしました。有益ですが、実際の設定例はありません。 もう一度おねがいします! – Bruce