rabbitmq
211haishui
朝着15k的目标前进,,,
展开
-
008 rabbitmq延迟队列实现
前言:通过设置队列的过期时间和死信交换器来实现。当队列内的消息达到设置的时间,将由死信交换器通过死信路由,发送到死信交换器绑定的队列上进行消费。使用场景举例:买家下订单之后,在未规定时间内进行支付,需要释放订单资源。可在下单时,推送到orderTtl订单ttl队列,当达到规定时间后,消息由orderTtl转移到orderDelay订单延迟队列,交由orderDelay订单延迟队列的消费者进行未...原创 2018-09-11 16:08:03 · 1260 阅读 · 0 评论 -
001 rabbitmq安装
1、安装依赖yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget2、安装erlangwget http://www.erlang.org/download/otp_src_18.3.tar.gz //下载erlang包tar -xzvf otp_src_18.3.tar.gz ...转载 2018-09-10 19:38:01 · 103 阅读 · 0 评论 -
002 sping-boot与rabbitmq简单集成
0、在pom.xml中引入amqp; 1、application.properties2、注册队列,以让amqp监听;3、定义生产者; 4、定义消费者;原创 2018-09-10 19:43:05 · 108 阅读 · 0 评论 -
003 direct交换器
前言:direct交换器,路由键充当队列名,消息投递到默认的direct交换器,然后再到对应的队列;1、定义队列; 2、定义生产者; 3、定义消费者; 4、测试; 5、结果:结论:消息正常投递,并被消费者消费了。 6、demon地址;https://github.com/haishui211/rabbitmqRep.git...原创 2018-09-10 19:47:30 · 189 阅读 · 0 评论 -
004 fanout交换器
前言:fanout交换器,忽略路由键的作用,消息将会投递到绑定该fanout交换器的所有队列上;1、定义队列、交换器,并进行绑定;2、定义生产者;3、定义两个消费者;4、测试;5、结果;结论:消息被投递到了绑定uploadFanoutExchange交换器的队列上6、demo地址https://github.com/haishui211/ra...原创 2018-09-10 19:52:35 · 196 阅读 · 0 评论 -
005 topic交换器
前言:topic交换器,消息可根据路由键,投递到匹配的队列上,包括完全匹配及模糊匹配;1、定义队列、交换器,并进行绑定;1)名称;2)队列;3)交换器;4)绑定; 2、定义生产者;其余log生产者类似:3、定义消费者;其余log消费者类似: 4、测试;给error、warn、debug、info投递消息;5...原创 2018-09-10 20:08:53 · 148 阅读 · 0 评论 -
006 rabbitmq生产者消息可靠投递实现
一、前言:1)生产者的消息,往mq服务器投递时,因网络中断、抖动等原因导致投递失败;2)本文采取实现ConfirmCallback接口,对消息投递进行确认;a、若返回true,则认为消息已成功投递;b、若返回false,则认为消息投递失败,需要重新投递;3)ConfirmCallback接口在消息不能到达exchange时进行回调;4)模拟消息投递失败的方案:在消息投递时,...原创 2018-09-10 20:21:07 · 1760 阅读 · 0 评论 -
007 消费者可靠接收消息实现
前言:1)队列需是持久化队列;2)acknowledge设置为手动确认模式,即manual;3)消费者接收到消息后,手动给当前信道channel反馈接收情况; 1、acknowledge设置为手动确认模式; 2、定义队列; 3、定义生产者; 4、定义消费者;5、测试结果;1)若返回true,消息正常从队列删除掉;2)若返回...原创 2018-09-10 20:26:59 · 122 阅读 · 0 评论