一、基本概念
1.1、消息(Message)
消息是指,消息系统所传输信息的物理载体,生产和消费数据的最小单位,每条消息必须输入一个主题。
1.2、主题(Topic)
Topic表示一类消息的集合,每个主题包含若干条消息,每条消息只属于某一个主题,是RocketMQ进行消息订阅的基本单位。topic:message 1:n、message:topic 1:1。一个生产者可以同时发送多种Topic的消息,producer:topic 1:n 、consumer:topic 1:1
1.3、标签(Tag)
为消息设置的标签,用于同一主题下区分不同类型的消息。来自同一业务单元的消息,可以根据不同业务目的在同一主题下设置不同的标签。标签能够有效地保持代码的清晰度和连贯性,并优化RocketMQ提供的查询系统。消费者可以根据Tag实现不同子主题的不同消费逻辑,实现更好的扩展性。
Topic = 货物 Tag = 上海
Topic = 货物 Tag = 上海|浙江
Topic = 货物 Tag = *
1.4、队列(Queue)
存储消息的物理实体。一个Topic中可以包含多个Queue,每个Queue中存放的就是该Topic的消息。一个Topic中的Queue也被称为一个Topic中的消息分区(Partition)。