Skip to content

Four1996/rabbitmq-demo

Repository files navigation

rabbitmq-demo

rabbitmq简单练习

"Hello World"工作模式:
1、一个生产者对应一个消费者。
"Work Queue工作模式":
1、再一个队列中如果有多个消费者,那么消费者之间对于同一个消息的关系是竞争的关系。
2、Work Queues对于任务过重或者任务较多的情况使用工作队列可以提高任务处理的速度。例如:短信服务部署多个,只需要一个节点成功发送即可。
"PubSub工作模式":
1、一个消费者可以绑定多个消息队列。
"Routing工作模式":
1、通过指定路由key来限制消费者就收信息的权限。即将不同的信息,按路由key进行分类,有选择地被不同的消费者接收到。
2、一个消费者可以绑定多个消息队列。
"Topics工作模式":
1、与路由模式不同的是,采用通配符的模式进行路由key的匹配。
2、同样,一个消费者可以绑定多个消息队列。
SpringBoot整合RabbitMQ:
1、SpringBoot提供了快速整合RabbitMQ的方式
2、基本信息在yml中配置(rabbitmq主机地址、端口号、用户名、密码、虚拟机路径),队列交互机以及绑定关系在配置类中使用Bean的方式配置
3、生产端直接注入RabbitTemlplate完成消息发送
4、消费端直接使用@RabbitListener完成消息接受。

死信队列
消息成为死信的三种情况:
1、队列消息长度到达限制
2、消费者拒接消费消息,basicNack/basicReject,并且不把消息重新放入原目标队列,requeue=false;
3、原队列存在消息过期设置,消息到达超时时间未被消费。

消息补偿
流程图:
Image text

About

rabbitmq学习的测试demo

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages