RocketMQ
文章平均质量分 95
小涂学编程
这个作者很懒,什么都没留下…
展开
-
Offset管理
可以继续读取并消费下一批消息。注意,该计算的数值是理想i情况下的理论数值,在生产环境中,不建议直接使用,而是根据当前环境,先设置一个比该值小的数值然后观察其压测效果,然后再根据效果逐步调大线程数,直到找到该环境中性能最佳时的值。消息是被顺序存储在commitlog文件的,且消息大小不定长,所以消息的清理是不可能以消息为单位进行清理的,而是以commitlog文件为单位进行清理的。Consumer将本地缓存的消息提交到消息线程中,使用业务消费逻辑对消息进行处理,处理完毕后获取到一个结果。原创 2024-03-02 23:30:57 · 1019 阅读 · 0 评论 -
RocketMQ的应用
顺序消息指的是,严格按照消息的发送顺序进行消费的消息。默认情况下生产者会把消息以Round Robin轮询方式发送到不同的Queue分区队列中;而消费消息时会从多个Queue上拉取消息,这种情况下的发送和消费不能保证顺序的。如果将消息仅发送到同一Queue中,消费时也只从这个Queue上拉取消息,就严格保证了消息的顺序性。原创 2024-03-03 00:03:50 · 17 阅读 · 0 评论 -
RocketMQ工作原理_消息的生产
由于可以推算出,一个indexFile的最大大小是:(40+500w*4+2000w*20)字节。原创 2024-03-02 19:52:54 · 608 阅读 · 0 评论 -
RocketMQ工作原理_消息的消费
然而默认消费下,offset是异步提交的,这个异步行导致提交到Broker的offset与Consumer实际消费的消息的不一致。例如:异步消费过程中,在第500条突然插进来Consumer2,但是Consumer1已经把500后面的queue的100条进行消费,但是Consumer2插入的时机是500条,这时候出现Rebalance,会出现消息的重复消费。,即Consumer向其关联的Queue注册了监听器,一旦发现有新的消息到来就会触发回调的执行,回调方法是Consumer取Queue拉取消息。原创 2024-03-02 21:39:28 · 938 阅读 · 0 评论