type
Post
status
Published
date
Mar 2, 2023
slug
summary
emmm chatGPT生成
tags
category
笔记
icon
password
RocketMQ提供了消息定时功能,即可以将消息发送到指定的时间点才被消费者接收。通过消息定时功能,可以实现一些定时任务,例如发送定时通知、定时统计等。
在RocketMQ中,消息定时功能是通过设置消息的延迟级别来实现的。延迟级别表示消息发送后多长时间才能被消费者接收,RocketMQ支持18个级别的延迟时间,从1s到2h不等。在消息发送时,需要将消息的延迟级别设置为对应的值,RocketMQ会在指定的时间点将消息发送给消费者。
messageDelayLevel,默认值为
1s
5s
10s
30s
1m
2m
3m
4m
5m
6m
7m
8m
9m
10m
20m
30m
1h
2h
18 个 level需要注意的是,RocketMQ的消息定时功能仅适用于可靠同步传输方式(SYNC),不适用于异步传输方式(ASYNC)和单向传输方式(ONEWAY)。
以下是一个发送定时消息的示例代码(Java客户端):
// 创建消息 Message message = new Message("TopicTest", "TagA", "Hello RocketMQ".getBytes()); // 设置延迟级别为3,即延迟10s message.setDelayTimeLevel(3); // 发送消息 producer.send(message);
- Author:Brust
- URL:https://brust.me/article/b482e738-4ce0-4177-a32c-b4a77e6bd79d
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!