开发者社区 > 云原生 > 云消息队列 > 正文

RocketMQ 为什么普通消息也可以发送定时/延时消息

RocketMQ 延时消息,我分别创建了延时消息、普通消息,通过 setStartDeliverTime() 指定延时,测试发现这两个MQ都可以达到延时效果,那在创建 Topic时为什么需要选择是普通消息还是延时消息呢?

展开
收起
斑石 2024-07-24 10:06:31 81 0
1 条回答
写回答
取消 提交回答
  • 创建Topic时选择普通消息或延时消息是由于RocketMQ内部实现的特性和资源管理。延时消息功能是特定于RocketMQ的定时/延时消息特性,它需要在服务端进行特殊处理和存储,以确保消息在指定时间后才能被消费。如果在一个普通消息的主题中尝试发送延时消息,消息可能无法正确地被定时投递,或者可能不会被视为延时消息处理。因此,创建延时消息主题是为了确保消息的正确分类和处理,以便系统能够支持延时消息的特定生命周期和功能,如精确定时、高并发处理等。在发送延时消息时,务必使用专为延时消息设计的主题。可参考文档

    2024-07-24 17:08:15
    赞同 11 展开评论 打赏

涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系产品 Serverless 化。RocketMQ 一站式学习:https://rocketmq.io/

相关产品

  • 云消息队列 MQ
  • 相关电子书

    更多
    RocketMQ Client-GO 介绍 立即下载
    RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载
    基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载