RocketMQ延时消息

适用场景

适用于定时向用户发送提醒信息,订单超时自动关闭等

使用方法

RocketMQ延时消息就是生产端发送时,可以为消息指定一个延迟级别的消息属性,指定该条消息在指定时间后才能被消费端收到

public void setDelayTimeLevel(int level) {
    this.putProperty(MessageConst.PROPERTY_DELAY_TIME_LEVEL, String.valueOf(level));
}

默认有18个延迟级别,1~18,对应时间如下

1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h

延迟级别是可配的,在broker配置文件中增加一条

messageDelayLevel=1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h 90s
msg.setDelayTimeLevel(19);

如上图发送,消息将在90s后投递

上一篇:面对黑客不断进化的攻击能力,你的游戏真的安全么?


下一篇:2021年便宜购买阿里云服务器攻略(阿里云小站篇)!