RabbitMQ 遅延キューの落とし穴

1. RabbitMQ の遅延キューを使用して、メッセージの遅延送信を実装します。デモを書きましたが、うまくいきました。

https://www.cnblogs.com/mfrank/p/11260355.html

 

2. 実際に使用したところ、一部のメッセージが指定した遅延時間どおりに消費されないことが判明しました。

https://www.zhihu.com/question/65916221

 

Google で検索して初めて、遅延キューにはいくつかの特徴があることを知りました: 1. 先入れ先出し; 2. 先頭のメッセージが消費されない場合、後続のメッセージは遅延時間に達しても消費されません。

したがって、遅延時間が異なるメッセージを同じキューに入れることはできません。つまり、遅延時間ごとに異なるキューを作成する必要があります。

しかし、実際の業務では遅延時間の異なるメッセージが大量に存在することは間違いなく、そのために多数の異なるキューを作成することは決して非現実的です。これを達成するには、もっと合理的な方法が他にあるはずです。

 

3. Rabbitmq-layed-message-exchange プラグインを使用して実装します。

具体的な構成と実装方法については、次のブログ投稿を参照してください。

https://blog.csdn.net/u014308482/article/details/53036770

 

 

おすすめ

転載: blog.csdn.net/u011453631/article/details/107458966