2016-07-28 84 views

回答

0

不直接來自RMQ

有幾個選項,但可能不是很好。

例如,您可以刪除隊列。如果沒有隊列,則不能使用。但這意味着您無法在該隊列中收集消息供以後使用。當消費者嘗試連接隊列時,您也會遇到問題。他們會錯誤,或者會創建隊列。

交換和隊列之間的綁定也是如此 - 您可以將其刪除。但是再次,您的隊列在綁定丟失時不會收集消息。

您的最佳選擇,假設你還需要收集的信息,只是延緩他們的處理,將兩件事情之一:

1)將消息發送到不同的隊列寫代碼,沒有消費附加到它。然後在任何一段時間後,將這些消息重新發布到正確的隊列中。

2)如果你只需要單獨延遲每個消息,延遲消息交換插件會爲你做的。 https://github.com/rabbitmq/rabbitmq-delayed-message-exchange

+0

感謝您的答案,讓我感到驚訝的是,這個簡單的流程不被Rabbit支持。我提交了一個問題https://github.com/rabbitmq/rabbitmq-server/issues/903。 –