Celery インスタンスを 2 つの方法で使用するアプリケーションがあります。インスタンスの.task
属性をタスク デコレータとして使用し、celery worker
s を呼び出すときにインスタンスを -A (--app) 引数として渡します。このワークフローは、生成と消費の両方に同じ Celery インスタンスを使用し、機能していますが、プロデューサー (タスク) とコンシューマー (セロリ ワーカー) の両方に同じ Celery インスタンスを使用しています。
現在、AMQP サービス プロバイダーである Bigwig RabbitMQ の使用を検討しており、2 つの異なるURL を公開しています。1 つはメッセージ プロデューサー用に最適化され、もう 1 つはメッセージ コンシューマー用に最適化されています。
個別のブローカー エンドポイントを利用するためにセットアップを変更する最善の方法は何ですか? 私は、単一の Celery インスタンスが (BROKER_URL 設定を介して) 単一のブローカー URL しか使用できないと想定しています。BROKER_URL 設定を除いて、同じように構成された 2 つの異なる Celery インスタンスを使用する必要がありますか?