RabbitMQ消息传递-初始化使用者

RabbitMQ消息传递-初始化使用者,rabbitmq,Rabbitmq,我想使用RabbitMQ将对象的状态连续广播给任何可能正在侦听的使用者。我想设置它,这样当消费者订阅时,它将选择最后一个可用状态。。。 这是可能的吗?这是可能的。它说它将把最后20条消息放在队列中,因此如果它是可配置的,您可以将其更改为最后1条消息,您就完成了 如果这不起作用,即数字固定为20,那么您可能必须处理队列中的前19条消息,并从20条消息中获取状态。这是一个有点烦人的解决办法,但正如你所知道的参数总是20,这应该是好的 最后,如果这不适合您,您可能会将您的消费者设置为等待,直到第一个状

我想使用RabbitMQ将对象的状态连续广播给任何可能正在侦听的使用者。我想设置它,这样当消费者订阅时,它将选择最后一个可用状态。。。 这是可能的吗?

这是可能的。它说它将把最后20条消息放在队列中,因此如果它是可配置的,您可以将其更改为最后1条消息,您就完成了

如果这不起作用,即数字固定为20,那么您可能必须处理队列中的前19条消息,并从20条消息中获取状态。这是一个有点烦人的解决办法,但正如你所知道的参数总是20,这应该是好的


最后,如果这不适合您,您可能会将您的消费者设置为等待,直到第一个状态为receive,假定该状态的广播频率合理。收到第一个状态后,启动应用程序的其余部分。我在这里假设您在执行其他操作之前需要状态。

使用自定义的最后值缓存交换: 例如

上次值缓存exchange

这是一个使用RabbitMQ的可插拔交换类型特性的最后一个值缓存的非常简单的实现

最后一个值缓存旨在解决以下问题:假设我正在使用消息传递向客户端发送某些更改值的通知;现在,当一个新的客户机连接时,在它改变之前,它不会知道值


最后一个值交换的行为类似于直接交换(绑定键与路由键的相等性进行比较);但是,它还跟踪每个路由密钥发布的最后一个值,当队列被绑定时,它会自动将绑定密钥的最后一个值加入队列。

如果您提供更详细的信息,例如为什么需要最后一个状态以及为什么不能等到下一个状态被广播,这将非常有用。您是如何设置队列的消息是否持久化队列是否自动删除?更多信息=更多有用的答案。为什么你需要知道我为什么需要最后一个状态?我没有设置任何队列,我只是问如何设置……我是MQ新手。Thxs.@robthewolf似乎更符合我最初的问题。不管怎样,谢谢你的帮助。我看了一下,同意了。我也在寻找这个功能,所以这看起来更好,因为这正是最后一条消息。