私はrabbitmqとceleryを使用してセットアップを行い、ワーカーはそれぞれ4つのインスタンスを持つ4つのマシンで実行しています。基本的に同じバックエンド関数を呼び出す2つのタスク関数が定義されていますが、そのうちの1つはprocess_transactionrate_limitが定義されていない名前で、もう1つは。で呼び出されslow_process_transactionていrate_limit="6/m"ます。タスクはrabbitmqの異なるキューに移動しslowますnormal。
奇妙なことに、両方のタスクにrate_limitが適用されています。celery.control.rate_limitを使用してrate_limitを変更しようとしても、process_transactionで変更しても実効レートは変更されず、slow_process_transaction名前を使用すると両方の実効レートが変更されます。
何が悪いのかについて何か考えはありますか?