rocketmqTemplate 延时消息
***********************
引入 jar 包
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.0.3</version>
</dependency>
************************
相关类
RocketmqTemplate
public class RocketMQTemplate extends AbstractMessageSendingTemplate<String> implements InitializingBean, DisposableBean {
public SendResult syncSend(String destination, Message<?> message, long timeout, int delayLevel) {
//同步延时发送
public void asyncSend(String destination, Message<?> message, SendCallback sendCallback, long timeout, int delayLevel) {
//异步延时发送
。。。。
}
************************
示例
******************
producer 端
ProducerService
@Service
public class ProducerService {
@Resource
private RocketMQTemplate rocketMQTemplate;
public void sendDelay(){
SendResult result=rocketMQTemplate.syncSend("topic-1:delay",MessageBuilder.withPayload("瓜田李下 delay").build(),2000,2);
System.out.println("发送时间:"+System.currentTimeMillis());
System.out.println(result);
}
}
******************
consumer 端
ConsumerService
@Service
@RocketMQMessageListener(consumerGroup = "consumerGroup",topic = "topic-1",selectorExpression = "*")
public class ConsumerService implements RocketMQListener<String> {
@Override
public void onMessage(String s) {
System.out.println("消费时间:"+System.currentTimeMillis());
System.out.println(s);
}
}
************************
控制台输出

版权声明:本文为weixin_43931625原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。