rocketmq
古笑来
愿今日之所作,可为君行一时方便!
展开
-
rocketmq延时队列
RocketMQ延迟队列的核心思路是:所有的延迟消息由producer发出之后,都会存放到同一个topic(SCHEDULE_TOPIC_XXXX)下,不同的延迟级别会对应不同的队列序号,当延迟时间到之后,由定时线程读取转换为普通的消息存的真实指定的topic下,此时对于consumer端此消息才可见,从而被consumer消费。...原创 2021-12-15 09:55:19 · 681 阅读 · 0 评论 -
rocketmq死信队列
当一条消息消费失败时,RocketMQ会进行一定次数的重试。重试的结果也很简单,无非就是在第N次重试时,被成功消费。或者就是经过M次重试后,仍然没有被消息。这通常是由于消费者在正常情况下无法正确地消费该消息。此时,RocketMQ不会立即将消息丢弃,而是将其发送到该消费者对应的特殊队列中去。(1)死信消息具有以下特性:不会再被消费者正常消费。有效期与正常消息相同,均为 3 天,3 天后会被自动删除。因此,请在死信消息产生后的 3 天内及时处理。(2)死信队列具有以下特性:一个死信队列对应一个 Gr原创 2021-12-15 09:55:33 · 475 阅读 · 1 评论 -
rocketmq解决消息积压
增加消费者,快速消费掉mq中的消息当消费者增加到和queue一样多,消费速率还是不行。 增加一个topic,起一组消费者,从原来的topic中消费到这个新的topic,然后在增加消费者来消费。原创 2021-10-27 09:26:51 · 1469 阅读 · 0 评论 -
rocketmq集群
rocketmq 多主多从架构 (dledger)Producer消息生产者,位于用户的进程内,Producer通过NameServer获取所有Broker的路由信息,根据负载均衡策略选择将消息发到哪个Broker,然后调用Broker接口提交消息。Producer Group生产者组,简单来说就是多个发送同一类消息的生产者称之为一个生产者组。Consumer消息消费者,位于用户进程内。Consumer通过NameServer获取所有broker的路由信息后,向Broker发送Pull请求来原创 2021-10-27 09:24:03 · 198 阅读 · 0 评论 -
rocketmq
消息队列是最小的 单位原创 2021-10-26 18:06:35 · 56 阅读 · 0 评论 -
rocketmq消息的有序性
有这样的需求的业务,把他们的消息发送到同一个队列中,或者根据业务号hash到多个队列中。原创 2021-10-26 18:05:13 · 114 阅读 · 0 评论 -
rocketmq快的原因
顺序写磁盘,nio,零拷贝多生产者,多消费者,多queue,并行写,并行读原创 2021-10-26 18:04:28 · 247 阅读 · 0 评论 -
rocketmq消息零丢失方案
事务ROLLBACK 回滚COMMIT 提交UNKNOW 回查生产者向mq发送half消息,消费者收到half消息的ack后执行本地事务,执行成功向mq发送commit,提交此事务;执行失败向mq发送rollback,回滚此事务;异步执行,可发送unknow,mq会定时回查;执行出现异常,什么也不发送,mq定时回查。回查到一定次数之后,丢弃此消息。broker高可用,节点主从模式。消费着同步消费(不开启异步线程),消费成功后再返回success。mq接到消费者的返回后才将此消息置为已消费..原创 2021-10-26 18:03:52 · 351 阅读 · 0 评论