普通消息(Normal Message):
这是最基本的消息类型,没有任何特殊属性。生产者发送消息到指定的主题,消费者从主题订阅并消费这些消息。普通消息不保证严格的顺序。
顺序消息(Ordered Message):
顺序消息保证同一个队列(Message Queue)中的消息被顺序消费。这对于需要严格按照消息发送顺序执行的业务场景(如订单创建、支付、发货等)非常有用。
延时消息(Delayed Message):
延时消息允许生产者发送消息后,消息不会立即被消费,而是在指定的延时时间后才可被消费。这适用于需要在未来某个时间点执行任务的场景。
事务消息(Transaction Message):
事务消息允许将本地事务和消息发送结合起来。生产者发送半消息(Prepared Message),本地事务执行成功后,再确认消息,此时消费者才能消费该消息。如果本地事务执行失败,则回滚消息。这适用于确保本地事务和消息发送两者要么都成功,要么都不成功的场景。
批量消息(Batch Message):
批量消息允许生产者将多个消息打包成一个批次发送,这可以显著提高传输效率和吞吐量。批量消息适用于消息体较小且发送频率较高的场景。
过滤消息(Filter Message):
过滤消息允许消费者根据消息的属性(如 tags、keys 等)来过滤消息,只消费符合特定条件的消息。这提供了一种灵活的消息订阅方式,减少了不必要的消息传输。
死信消息(Dead Letter Message):
当消息重试消费仍然失败,超过最大重试次数后,消息会被发送到一个特殊的死信队列。应用可以监控这个队列来处理无法正常消费的消息,例如进行告警或人工干预。