AMQP中每个队列的唯一消息?
这与其他问题很相似,但有一点变化:我在规范中读到AMQP消息的消息ID应该由应用程序本身设置,所以理论上我可以使用它来保证一定程度的唯一性, 对?
现在我的主要问题是:该消息id在何种范围内是唯一的? 对于当前排队在特定队列中的消息? 在所有的队列中? 在宇宙上? :-)
这种行为是否标准化? 我打算在这里使用RabbitMQ,但它会很高兴有一些不是供应商特有的:-)
谢谢。
另一个建议是根据倾倒管道 - 智能终端学派的思想。
您可以使用某种共享状态来处理应用程序中的唯一性。
从Gearman转换到RabbitMQ时,我们遇到了同样的问题。 我们使用memcached来跟踪唯一的消息标识的发布和消费者删除消息标识已存储在memcache(重复)中的消息。 您也可以在将它放入队列之前检查内存缓存。
这使您不必在消息总线层使用此功能(这样您就可以更轻松地在代理之间切换,也可以在不保证唯一性的情况下进行切换)
消息标识仅适用于特定应用程序,可能并非唯一。 你必须自己照顾独特。
链接地址: http://www.djcxy.com/p/881.html