首页 > 其他 > 详细

RabbitMq

时间:2019-04-03 16:53:29      阅读:313      评论:0      收藏:0      [点我收藏+]

1,RabbitMq:
它比kafka成熟,支持AMQP协议(跨语言)处理,在可靠性上,RabbitMq超过kafka,在性能方面超过ActiveMQ。 数据一致性 完整性好
Kafka:
Kafka设计的初衷就是处理日志的,不支持AMQP事务处理,可以看做是一个日志系统,针对性很强,所以它并没有具备一个成熟MQ应该具备的特性
Kafka的性能(吞吐量、tps)比RabbitMq要强,如果用来做大数据量的快速处理storm实时计算 是比RabbitMq有优势的。

2,

消息系统的核心作用就是三点:解耦,异步和并行

3,

rabbitmq消息模型
主要2中 确定消费者数据 简单类型和work work多个消费者 默认均匀消费 可设置每次去一个 能者多劳
不确定消费者模型3种 即发布订阅有三种 有交换机 可控制发给那些队列
fanout 广播 消息发给所有绑定交换机的队列 消息能重复消费(发给了很多队列)
direct 定向 指定路由
topic 通配符 符合路由模式的队列 和direct对比 支持通配符# 多个 *一个 其他和direct一样

rabbitmq消息发送确认 到达交换机回调接口是ConfirmCallback 到达队列是ReturnCallback

消息接收确认 channel.basicAck方法 实现ChannelAwareMessageListener 接口
防止消费者丢失数据 消息确认机制

rabbitmq丢失数据 持久化

生产者丢失数据 生产者启动confirm机制 成功后会有返回, 发送失败 生产者确认机制 mq给生产者一个回执


消息重复消费 解决幂等性即可 比如先查询一下 有就更新 不插入
消息顺序 拆分队列 一个队列对应一个消费者 不拆分队列 用一个消费者 然后消费者用队列排序

RabbitMq

原文:https://www.cnblogs.com/song-9527/p/10649884.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!