activeMQ延时发送

activeMQ启用延时投递

延时投递属性:

Property name type description
AMQ_SCHEDULED_DELAY long 延迟投递的时间
AMQ_SCHEDULED_PERIOD long 重复投递时间间隔
AMQ_SCHEDULED_REPEAT int  重复投递次数
AMQ_SCHEDULED_CRON String Cron表达式

步骤1首先要修改activemq.xml配置文件,启用延时投递
1 
2     ...
3   

即:在broker节点加上schedulerSupport="true",然后重启activemq

步骤2、 在生产message的时候设置参数
public Message createMessage(Session session) throws JMSException {
  Message m = session.createTextMessage(message);
  m.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_DELAY, 5*1000);
  m.setLongProperty(ScheduledMessage.AMQ_SCHEDULED_PERIOD, 5*1000);
  m.setIntProperty(ScheduledMessage.AMQ_SCHEDULED_REPEAT, 9);
  return m;
}


只需打开activeMQ控制台就可以看到延时投递的效果

你可能感兴趣的:(jms)