问题引入

上一节介绍了kafka是一个消息队列,但是如果我想某个消息过了半小时之后再次进行消费,这就是延时消息,这个使用需要rocket mq

与kafka对比

都是消息队列,那么就可以进行对比

kafka是使用zookeper来进行,rocket mq使用的nameserver

分区被修改程队列

使用的mysql回表查询方式,首先找到offset,然后去commitlog找到body

kafka直接查询offset就可以使用

rocketmq在单个broker下降所有的topic的数据写入到一个broker里面,然后直接查询这个commit loig

备份机制,备份的是commitlog ,不再是分区

独有的功能

消息过滤

vip用户的消息还有普通用户的消息,可以打入tag来作为标记来进行区分

延时队列

延时查询,是否缴费

死信队列

消息重试次数太多,放入死信队列

实现分布式事务