美文网首页一些收藏
RocketMQ-消息发送流程及定时拉取模式

RocketMQ-消息发送流程及定时拉取模式

作者: 洛神灬殇 | 来源:发表于2022-04-30 21:05 被阅读0次
image

消息发送流程主要包括如下三个方面:

1、Topic路由寻址

2、选择消息队列

3、消息发送、重试、Broker规避
RocketMQ 使用拉模式来实现 Topic 路由有什么缺点呢?

1、Topic 路由中心(Nameserver) topic 是基于最终一致性,极端情况下会出现数据不一致。

2、客户端无法实时感知路由信息的变化,例如某台Broker 自身进程未关闭,但停止向Nameserver
    发送心跳包,但生产者无法立即感知该Broker服务器的异常,会对消息发送造成一定的可用性?

    RocketMQ 并不打算解决上述问题,因为基于上述的设计,RocketMQ

    NameServer 的实现非常简单、高效,至于消息发送的高可用性,则由消息发送客户端自己来保证。

RocketMQ的设计者遵循的一个设计理念:崇尚“缺陷美”,简单、高性能。

IndexFile 文件格式

image

** IndexFile文件基于物理磁盘文件实现Hash索引。其文件由40字节的文件头、500W个hash槽,每个hash槽为4个字节,最后由2000万个Index条目,每个条目由20个字节构成,分别为4字节的索引key的hashcode、8字节消息物理偏移量、4字节时间戳、4字节的前一个Index条目(hash冲突的链表结构)。**

相关文章

  • RocketMQ-消息发送流程及定时拉取模式

    消息发送流程主要包括如下三个方面: 1、Topic路由寻址2、选择消息队列3、消息发送、重试、Broker规避 R...

  • RocketMQ-消息发送

    简介 本文通过问题入手,介绍下RocketMQ的消息发送逻辑是怎么样的。消息发送的大体逻辑图如下: 问题 首先我们...

  • RocketMQ-发送消息

    运行NameServer和Broker后,我们可以尝试用代码示例写一下:消息发送的三种方式 同步发送,适用场景:对...

  • Kafka消费模式

    消息队列的两种模式 1)点对点模式(一对一,消费者主动拉取数据,消息收到后消息清除) 消息生产者生产消息发送到Qu...

  • RabbitMQ之消息可靠性投递实现

    方案一:消息入库、定时拉取重新投递 消息流转流程图 优劣势 这种方式的优势就是实现简单,没有那么多花里胡哨的操作,...

  • kafka生产消费

    Kafka消息生产及消费大体流程 发送流程 1、名词含义: 1)Producer :消息生产者,就是向kafka ...

  • Kafka源码分析-Consumer(4)-Subscripti

    KafkaConsumer从Kafka拉取消息时发送的请求时FetchRequest,其中需要指定消费者希望拉取的...

  • 一、Kafka概述

    1.1 消息队列 (1)点对点模式(一对一,消费者主动拉取数据,消息收到后消息清除) 点对点模型通常是一个基于拉取...

  • RocketMQ-Producer生产者解析

    Producer 概念说明* 初始化流程&流程图&相关类关系说明* 消息发送过程* 批量消息发送* 发送顺序消息...

  • rocketMq consumer消息消费

    消息从producer发送到了broker之后,消息的订阅者就可以订阅消费消息。 roketmq消息拉取方式有两种...

网友评论

    本文标题:RocketMQ-消息发送流程及定时拉取模式

    本文链接:https://www.haomeiwen.com/subject/fiayyrtx.html