Java RabbitMq:使用同一队列使用不同的消息
关于rabbitmq消费者,我有以下问题: 消息模型1:Java RabbitMq:使用同一队列使用不同的消息,java,rabbitmq,spring-rabbit,Java,Rabbitmq,Spring Rabbit,关于rabbitmq消费者,我有以下问题: 消息模型1: String name; //apple //audi String type; //fruit //car 消息模型2: String name; //apple //audi String type; //fruit //car + correlation_id: e.g a mapping id used in business logic: 1234567 (它们之间的唯一区别是作为元数据的关联id) 发布邮件时,我使
String name; //apple //audi
String type; //fruit //car
消息模型2:
String name; //apple //audi
String type; //fruit //car
+
correlation_id: e.g a mapping id used in business logic: 1234567
(它们之间的唯一区别是作为元数据的关联id)
发布邮件时,我使用以下路由键:com.my.routingKey。(适用于数据模型1和数据模型2)
当我使用消息时,我使用2个不同的队列:
有没有办法只在一个队列中处理这类消息?不确定使用相关id区分这些消息是否是一种好方法。例如,在消费者中:如果存在相关id,则执行数据模型2的特定逻辑否则执行数据模型1的特定逻辑AMPQ协议中的消息从制作人exchange决定将此消息或该消息放置到哪个绑定队列。因此,关于两个队列的逻辑是正确的,只有真正找出正确的路由逻辑才是问题所在
请考虑调查不同的Exchange类型,以确定哪一个是基于元数据的最佳逻辑: