我可以让RabbitMQ对任务有唯一的约束吗?

我可以让RabbitMQ对任务有唯一的约束吗?,rabbitmq,Rabbitmq,如果我的用户速度慢,我的发布者可能会重新发布相同的任务。是否可以将RabbitMQ配置为仅维护队列中我的任务的唯一性?RabbitMQ不在消息体中查看,并且看起来,使用头和参数时,您的问题无法解决。您应该注意客户端的DUP 附言:无论如何,每个消费者都应该注意DUP,原因是 这里存在消息复制的可能性,因为代理 可能已经发送了一份从未送达制作人的确认书(由于 网络故障等)。因此,消费者应用程序需要 在幂等元中执行重复数据消除或处理传入消息 态度 从来看,这个原因不适用于我的用例。我只想让我的发布者

如果我的用户速度慢,我的发布者可能会重新发布相同的任务。是否可以将RabbitMQ配置为仅维护队列中我的任务的唯一性?

RabbitMQ不在消息体中查看,并且看起来,使用头和参数时,您的问题无法解决。您应该注意客户端的DUP

附言:无论如何,每个消费者都应该注意DUP,原因是

这里存在消息复制的可能性,因为代理 可能已经发送了一份从未送达制作人的确认书(由于 网络故障等)。因此,消费者应用程序需要 在幂等元中执行重复数据消除或处理传入消息 态度


来看,这个原因不适用于我的用例。我只想让我的发布者把作业推到队列上,并让队列删除它已经拥有的作业。但公平地说,我会按照计划在数据库中保持状态。