Spring整合ActiveMQ实现消息延迟投递和定时投递

 

linux(centos)系统安装activemq参考:https://www.cnblogs.com/pxblog/p/12222231.html

 

首先在ActiveMQ的安装路径 /conf/activemq.xml 修改配置文件  增加:schedulerSupport="true"

 

 

 

然后保存重启服务

进入bin目录,执行 

./activemq restart

 

 

 Spring整合ActiveMQ,实现队列主题消息生产消费参考:https://www.cnblogs.com/pxblog/p/12615773.html

 

以下伪代码是在上述链接基础上修改的

 

/*队列生产者*/
        jmsTemplate.send(session1 -> {
            TextMessage textMessage = session1.createTextMessage("发送的消息内容");
            //延迟投递的时间 毫秒
            textMessage.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_DELAY,4000);
            //重复投递的的时间间隔 毫秒
            textMessage.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_PERIOD,4000);
            //重复投递的次数
            textMessage.setIntProperty(ScheduledMessage.AMQ_SCHEDULED_REPEAT,3);
            return textMessage;
        });

 

posted @ 2020-11-10 08:58  yvioo  阅读(297)  评论(0编辑  收藏  举报