私が取り組んでいるアプリに Celery を使用することに興味があります。すべてが単純明快に思えますが、負荷分散された複数のアプリケーション サーバーを使用している場合に何をする必要があるかについて、少し混乱しています。すべてのドキュメントは、ブローカーがアプリケーションと同じサーバー上にあることを前提としています。現在、私のアプリケーション サーバーはすべて Amazon ELB の背後にあり、タスクはそれらのいずれかから取得できる必要があります。
これは私がする必要があると私が仮定するものです:
- 別のインスタンスでブローカー サーバーを実行する
- そのブローカー サーバーに接続するように各アプリケーション インスタンスを構成する
- 各アプリケーション インスタンスもセロリの動作 (celeryd の実行) になりますか?
私の唯一の不満は、ブローカ インスタンスが停止した場合はどうなるかということです。2 つのブローカー インスタンスを実行して、1 つがダウンしても安全な方法はありますか?
私のようなセットアップで何をすべきかについてのヒントや情報は大歓迎です. 私は何かが欠けているか、何かを理解していないと確信しています。