全部产品
存储与CDN 数据库 安全 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 钉钉智能硬件
消息队列 MQ

名词解释

更新时间:2017-08-01 10:55:29

本文主要对 MQ 涉及的专有名词及术语进行定义和解析,方便您更好地理解相关概念并使用 MQ。

Message Queue

消息队列,阿里云商用的专业消息中间件,是企业级互联网架构的核心产品,提供基于高可用分布式集群技术搭建的消息发布订阅、轨迹查询、资源统计、定时(延时)、监控报警等一系列消息云服务。

Message

消息,消息队列中信息传递的载体。

Message ID

消息的全局唯一标识,由 MQ 系统自动生成,唯一标识某条消息。

Message Key

消息的业务标识,由消息生产者(Producer)设置,唯一标识某个业务逻辑。

Topic

消息主题,一级消息类型,通过 Topic 对消息进行分类。

Tag

消息标签,二级消息类型,用来进一步区分某个 Topic 下的消息分类。

Producer

消息生产者,也称为消息发布者,负责生产并发送消息。

Producer ID

一类 Producer 的标识,这类 Producer 通常生产并发送一类消息,且发送逻辑一致。

Producer 实例

Producer 的一个对象实例,不同的 Producer 实例可以运行在不同进程内或者不同机器上。Producer 实例线程安全,可在同一进程内多线程之间共享。

Consumer

消息消费者,也称为消息订阅者,负责接收并消费消息。

Consumer ID

一类 Consumer 的标识,这类 Consumer 通常接收并消费一类消息,且消费逻辑一致。

Consumer 实例

Consumer 的一个对象实例,不同的 Consumer 实例可以运行在不同进程内或者不同机器上。一个 Consumer 实例内配置线程池消费消息。

集群消费

一个 Consumer ID 所标识的所有 Consumer 平均分摊消费消息。例如某个 Topic 有 9 条消息,一个 Consumer ID 有 3 个 Consumer 实例,那么在集群消费模式下每个实例平均分摊,只消费其中的 3 条消息。

广播消费

一个 Consumer ID 所标识的所有 Consumer 都会各自消费某条消息一次。例如某个 Topic 有 9 条消息,一个 Consumer ID 有 3 个 Consumer 实例,那么在广播消费模式下每个实例都会各自消费 9 条消息。

定时消息

Producer 将消息发送到 MQ 服务端,但并不期望这条消息立马投递,而是推迟到在当前时间点之后的某一个时间投递到 Consumer 进行消费,该消息即定时消息。

延时消息

Producer 将消息发送到 MQ 服务端,但并不期望这条消息立马投递,而是延迟一定时间后才投递到 Consumer 进行消费,该消息即延时消息。

事务消息

MQ 提供类似 X/Open XA 的分布事务功能,通过 MQ 事务消息能达到分布式事务的最终一致。

顺序消息

MQ 提供的一种按照顺序进行发布和消费的消息类型, 分为全局顺序消息和分区顺序消息。

顺序发布

对于指定的一个 Topic,客户端将按照一定的先后顺序进行发送消息。

顺序消费

对于指定的一个 Topic,按照一定的先后顺序进行接收消息,即先发送的消息一定会先被客户端接收到。

全局顺序消息

对于指定的一个 Topic,所有消息按照严格的先入先出(FIFO)的顺序进行发布和消费。

分区顺序消息

对于指定的一个 Topic,所有消息根据 sharding key 进行区块分区。同一个分区内的消息按照严格的 FIFO 顺序进行发布和消费。Sharding key 是顺序消息中用来区分不同分区的关键字段,和普通消息的 key 是完全不同的概念。

消息堆积

Producer 已经将消息发送到 MQ 服务端,但由于 Consumer 消费能力有限,未能在短时间内将所有消息正确消费掉,此时在 MQ 服务端保存着未被消费的消息,该状态即消息堆积。

消息过滤

订阅者可以根据消息标签(Tag)对消息进行过滤,确保订阅者最终只接收被过滤后的消息类型。消息过滤在 MQ 服务端完成。

消息轨迹

在一条消息从发布者发出到订阅者消费处理过程中,由各个相关节点的时间、地点等数据汇聚而成的完整链路信息。通过消息轨迹,用户能清晰定位消息从发布者发出,经由 MQ 服务端,投递给消息订阅者的完整链路,方便定位排查问题。

重置消费位点

以时间轴为坐标,在消息持久化存储的时间范围内(默认3天),重新设置消息订阅者对其订阅 Topic 的消费进度,设置完成后订阅者将接收设定时间点之后由消息发布者发送到 MQ 服务端的消息。

中继

中继服务(Relay)是由消息队列(MQ)提供的服务发布与订阅组件,该组件的主要作用是在不同的网络环境下实现服务之间互联互通的能力。

本文导读目录