项目基础结构参考:
生产者(发布者)源码:
消费者1源码:
消费者2源码:
工作过程:
生产者每个1秒将消息发送给rabbitmq的topic类型的Exchange上,如果消息的routing key与binding的routing key符合通配符匹配的话,消息将会路由到该队列上;
消费者1声明了队列,并通过routingkey绑定到Exchange上,其routingkey为spittle.*
消费者2声明了队列,并通过routingkey绑定到Exchange上,其routingkey为spittle.add和spittle.update
注意:exchanger没有存储消息的能力,只有队列有存储消息的能力。所以在测试的时候,要先将两个consumer启动起来,之后再启动producer。
Rabbitmq的效果:
结果:
生产者
消费者1:
消费者2: