RocketMQ实现延时消费
rocketMQTemplate.syncSend(“helloTopicBoot”,msg,3000,3);
3000为等待消息回传时间,如果3000毫秒还没有回传即发送错误信息,
3为延时消费的时间
/***生产者*发送延时消息*/@Testpublic void sendDelayMsg(){Message msg = MessageBuilder.withPayload("发送延时消息,发送时间:"+new Date()).build();rocketMQTemplate.syncSend("helloTopicBoot",msg,3000,3);}
/***消费者*不需要添加任何东西,只是打印出来便于观察*/
@Component
@RocketMQMessageListener(consumerGroup = "htpConsumerGroup",topic = "helloTopicBoot",messageModel = MessageModel.BROADCASTING)
public class HelloTopicListener implements RocketMQListener<MessageExt> {@Overridepublic void onMessage(MessageExt messageExt) {System.out.println("消费时间"+new Date() +"收到的消息:"+new String(messageExt.getBody(), Charset.defaultCharset()));}
}