阅读有关什么是Rabbit以及做什么的文档后,我有一些常见问题:
情况是:生产者将一条消息发送给某些消费者(订户)。
对于以下列表的所有内容,使用内容以及进一步挖掘的内容,我需要简短说明。
在此先感谢您和任何评论!
答案 0 :(得分:2)
如果您可以详细说明一些问题并包括用例,我可以编辑答案。
1-只要消费者还活着,rabbitmq就会向消费者发送传入消息。如果希望消息/队列在一段时间后过期,则可以为它们提供TTL。 https://www.rabbitmq.com/ttl.html
2-您的意思是什么?
3-Rabbitmq将数据存储在mnesia数据库中。 https://www.rabbitmq.com/persistence-conf.html https://www.rabbitmq.com/relocate.html
4-“ filterig”消息和清除队列是什么意思?成功使用的消息立即从队列中删除。
5-您可以将ttl放入队列或将队列声明为自动删除 https://www.rabbitmq.com/ttl.html https://www.rabbitmq.com/queues.html
6-如果消费者不发送确认消息给兔子,则只要内存已满或兔子不可用,消息就不会被确认。
7-两者。使用者可以创建自己的队列并将其绑定到交换,也可以从现有队列中使用。这取决于用例。
8-如果不知道一对多的含义,很难回答这个问题。直接交换或扇出或其他,多少个队列等。
但是,在Rabbitmq中,默认情况下按发布顺序对邮件进行排序。
根据您共享的链接,rabbitmq首先将消息发送给优先级更高的使用者,直到使用者的预取计数(使用者的未确认消息)成为限制为止。
9-您需要在代码中处理这种情况。或者,您可以将Management ui与Shovel插件一起使用。
https://www.rabbitmq.com/management.html https://www.rabbitmq.com/shovel.html
10-同样,这取决于设计和用例。