RocketMq 顺序消费、分区消息、延迟发送消息、Topic、tag分类 实战(基本概念) (一)

1、RocketMq基本概念
Topic
消息主题,一级消息类型,通过Topic对消息进行分类。更多信息,请参见Topic与Tag最佳实践。
消息(Message)
消息队列中信息传递的载体。
Message ID
消息的全局唯一标识,由云消息队列 RocketMQ 版系统自动生成,唯一标识某条消息。
Message Key
消息的业务标识,由消息生产者(Producer)设置,唯一标识某个业务逻辑。
Tag
消息标签,二级消息类型,用来进一步区分某个Topic下的消息分类。更多信息,请参见Topic与Tag最佳实践。
Producer
消息生产者,也称为消息发布者,负责生产并发送消息。
Producer实例
Producer的一个对象实例,不同的Producer实例可以运行在不同进程内或者不同机器上。Producer实例线程安全,可在同一进程内多线程之间共享。
Consumer实例
Consumer的一个对象实例,不同的Consumer实例可以运行在不同进程内或者不同机器上。一个Consumer实例内配置线程池消费消息。
Group
一类Producer或Consumer,这类Producer或Consumer通常生产或消费同一类消息,且消息发布或订阅的逻辑一致。
Group ID
Group的标识。
队列(Message Queue)
即Topic Partition,物理上的概念。每个Topic包含一个或多个队列。创建Topic时队列由系统自动分配,不支持自定义修改。
集群消费
一个Group ID所标识的所有Consumer平均分摊消费消息。例如某个Topic有9条消息,一个Group ID有3个Consumer实例,那么在集群消费模式下每个实例平均分摊,只消费其中的3条消息
广播消费
一个Group ID所标识的所有Consumer都会各自消费某条消息一次。例如某个Topic有9条消息,一个Group ID有3个Consumer实例,那么在广播消费模式下每个实例都会各自消费9条消息。
定时消息
Producer将消息发送到云消息队列 RocketMQ 版服务端,但并不期望这条消息立马投递,而是推迟到在当前时间点之后的某一个时间投递到Consumer进行消费,该消息即定时消息。
延时消息
Producer将消息发送到云消息队列 RocketMQ 版服务端,但并不期望这条消息立马投递,而是延迟一定时间后才投递到Consumer进行消费,该消息即延时消息。
事务消息
云消息队列 RocketMQ 版提供类似XA或Open XA的分布事务功能,通过云消息队列 RocketMQ 版的事务消息能达到分布式事务的最终一致。
顺序消息
云消息队列 RocketMQ 版提供的一种按照顺序进行发布和消费的消息类型,分为全局顺序消息和分区顺序消息。
全局顺序消息
对于指定的一个Topic,所有消息按照严格的先入先出(FIFO)的顺序进行发布和消费。
分区顺序消息
对于指定的一个Topic,所有消息根据Sharding Key进行区块分区。同一个分区内的消息按照严格的FIFO顺序进行发布和消费。Sharding Key是顺序消息中用来区分不同分区的关键字段,和普通消息的Message Key是完全不同的概念。
消息堆积
Producer已经将消息发送到云消息队列 RocketMQ 版的服务端,但由于Consumer消费能力有限,未能在短时间内将所有消息正确消费掉,此时在云消息队列 RocketMQ 版的服务端保存着未被消费的消息,该状态即消息堆积。
消息过滤
Consumer可以根据消息标签(Tag)对消息进行过滤,确保Consumer最终只接收被过滤后的消息类型。消息过滤在云消息队列 RocketMQ 版的服务端完成。
消息轨迹
在一条消息从Producer发出到Consumer消费处理过程中,由各个相关节点的时间、地点等数据汇聚而成的完整链路信息。通过消息轨迹,您能清晰定位消息从Producer发出,经由云消息队列 RocketMQ 版服务端,投递给Consumer的完整链路,方便定位排查问题。
死信队列
死信队列用于处理无法被正常消费的消息。当一条消息初次消费失败,云消息队列 RocketMQ 版会自动进行消息重试;达到最大重试次数后,若消费依然失败,则表明Consumer在正常情况下无法正确地消费该消息。此时,云消息队列 RocketMQ 版不会立刻将消息丢弃,而是将这条消息发送到该Consumer对应的特殊队列中。
消息路由
消息路由常用于不同地域之间的消息同步,保证地域之间的数据一致性。云消息队列 RocketMQ 版的全球消息路由功能依托阿里云优质基础设施实现的高速通道专线,可以高效地实现不同地域之间的消息同步复制。
以上基本概念链接来自:
https://help.aliyun.com/zh/apsaramq-for-rocketmq/cloud-message-queue-rocketmq-4-x-series/product-overview/terms?spm=a2c4g.11186623.0.0.77d8395bADOQft

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
手把手视频详细讲解项目开发全过程,需要的小伙伴自行百度网盘下载,链接见附件,永久有效。 课程简介 细致简介了消息队列在大数据的应用场景、Kafka集群搭建、Kafka操作,基准测试、架构、编程、结合Kafka Eagle简介原理等 课程亮点 1,知识体系完备,从小白到大神各阶段读者均能学有所获。 2,生动形象,化繁为简,讲解通俗易懂。 3,结合工作实践及分析应用,培养解决实际问题的能力。 4,企业级方案设计,完全匹配工作场景。 适用人群 1、对大数据感兴趣的在校生及应届毕业生。 2、对目前职业有进一步提升要求,希望从事大数据行业高薪工作的在职人员。 3、对大数据行业感兴趣的相关人员。 课程内容 第一章 简介 1.1 消息队列简介 1.2 Kafka简介 1.3 Kafka的优势 1.4 哪些公司在使用Kafka 1.5 Kafka生态圈介绍 1.6 Kafka版本 第二章 环境搭建 2.1 搭建Kafka集群 2.2 目录结构分析 2.3 Kafka一键启动/关闭脚本 第三章 基础操作 3.1 创建topic 3.2 生产消息到Kafka 3.3 从Kafka消费消息 3.4 使用Kafka Tools操作Kafka 第四章 Kafka基准测试 第五章 Java编程操作Kafka 5.1 同步生产消息到Kafka中 5.2 从Kafka的topic消费消息 5.3 异步使用带有回调函数方法生产消息 第六章 架构 6.1 Kafka重要概念 6.2 消费者组 第七章. Kafka生产者幂等性与事务 38 7.1 幂等性 第八章 分区和副本机制 8.1 生产者分区写入策略 8.2 消费者组Rebalance机制 8.3 消费分区分配策略 8.4 副本机制 第九章 高级(High Level)API与低级(Low Level)API 9.1 高级API 9.2 低级API 9.3 手动消费分区数据 第十章 监控工具Kafka-eagle介绍 10.1 Kafka-Eagle简介 10.2 安装Kafka-Eagle 10.3 Kafka度量指标 第十一章 Kafka原理 11.1 分区的leader与follower 11.2 Kafka生产、消费数据工作流程 11.3 Kafka的数据存储形式 11.4 消息不丢失机制 11.5 数据积压 第十二章 Kafka中数据清理(Log Deletion) 12.1 日志删除 12.2 日志压缩(Log Compaction)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值