
可靠消费:手动应答
可靠生产:
- 队列持久化:重启兔子,队列还在
- 消息持久化 :重启兔子,队列中的消息还在
- 发布确认模式:发布成功之后告知生产者
channel.queueDeclare("q", true, false, false, null);
//创建队列时
//true表示开启持久化
Tips:如果目标队列没开持久化,会报错
消息持久化//发送消息时
channel.basicPublish("", "q",
MessageProperties.PERSISTENT_TEXT_PLAIN,
(i + "").getBytes());
特点:
- 会在缓存中存在一段时间,然后再写入磁盘。
- 单独存在不具有可靠性
方法:发送一条消息,重启电脑,看看消费者。
发布确认模式 开启模式channel./confirm/iSelect();同步
会阻塞,直到持久化结束,用的不多
//发布之后,true成功,false失败 boolean flag = channel.waitFor/confirm/is();异步
//发布之前,ok成功,no失败
/confirm/iCallback ok = (deliveryTag, multiple) -> {
System.out.println("成功" + deliveryTag);
};
/confirm/iCallback no = (deliveryTag, multiple) -> {
System.out.println("失败" + deliveryTag);
};
channel.add/confirm/iListener(ok, no);
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)