MQ
softwareDragon
软件工程师一枚
展开
-
RabbitMQ 高可用 幂等 消息丢失 顺序消费
1.高可用:RabbitMQ的高可用指的是镜像模式的集群,queue的元数据和消息数据都存在每个节点上,不是分布式的(中小公司推荐,qps万级)2.(重复消息)幂等:不管生产者发送几条相同的消息到mq,消费者消费的时候,只消费一条,实现思路1.例如写库,订单表,生产者生产消息的时候在消息体中加入一个唯一标识(一个字段或者多个字段组合),这样在消费者消费的时候,首先去从库中查看是否有这个标识的数据,如果有的话,直接丢掉就行。3.消息丢失:分为三个部分,分别为3.1:生产者消息是否发送到mq服务器中原创 2020-11-23 17:49:36 · 146 阅读 · 0 评论 -
RabbitMQ 消息变成 死信队列的情况
1.消息被拒绝(basic.reject/basic.nack)并且requeue=false2.消息TTL过期3.队列达到最大长度原创 2020-07-24 21:49:19 · 548 阅读 · 0 评论 -
RabbitMQ 的属性设置
<dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>3.6.5</version></dependency>AMQP.BasicProperties properties = new AMQP.BasicProperties.Builder() .原创 2020-07-23 17:45:51 · 342 阅读 · 0 评论 -
RabbitMQ 常见的交换机类型 特点
1.direct 直连方式routingKey必须完全一致,否则会被丢弃2.top 模糊匹配 * 为匹配一个单词 #可以匹配一个或多个单词,灵活度最高3、fanout 和routingKey没有关系,直接将交换机和队列进行绑定,性能最高...原创 2020-07-23 17:24:04 · 303 阅读 · 0 评论 -
ActiveMQ、kafka、RocketMQ、RabbitMQ
ActiveMQ性能来说相对较弱kafka不适合消息可靠性投递的RocketMQ商业版功能齐全,收费综合考虑选择RabbitMQ原创 2020-07-21 12:36:28 · 248 阅读 · 0 评论 -
RocketMQ 消费者push模式
版本为4.3.X一:集群模式1.默认采用clustering,采用远程文件存储Offffset2.本质上因为多消费模式,每个Consumer消费所订阅主题的一部分3.这种情况需要broker控制offset的值,使用RemoteBrokerOffsetStore二:广播模式(BroadCasting)1:广播模式下,由于每个Consumer都会收到消息且消费2.各个Co...原创 2020-01-28 20:09:46 · 394 阅读 · 0 评论 -
RocketMQ 为什么延迟消息不能自定义延迟时间
生产者把消息发送到broker(消息服务器)后,开始算延迟时间,时间到了之后,消费者开始消费。为了让broker的性能更好,官网没有提供这样的功能,因为消息队列本来就是一个队列,不断对其进行排序的话,会严重影响其性能。...原创 2020-01-27 21:23:04 · 3610 阅读 · 1 评论 -
RocketMQ主从同步机制
1.Master-Slave主从同步2.同步内容:数据内容(commitLog)+元数据信息(metaData).数据内容的同步方式为实时同步,使用原生socket,性能更高。元数据信息同步方式为定时任务,每分钟同步一次,使用netty,相对来说,方便高效。3.元数据同步包括:Broker角色识别,为Slave则启动同步任务4.消息同步:HAService、HAConnection、W...原创 2020-01-27 17:55:34 · 512 阅读 · 0 评论 -
RocketMQ相比RabbitMQ的优点
RocketMQ(4.3.x版本)支持分布式事务支持顺序消费 失败重试机制,而这些RabbitMQ则没有原创 2020-01-18 09:38:46 · 881 阅读 · 0 评论