【发布时间】:2019-06-20 19:32:41
【问题描述】:
使用JmsTemplate获取activemq队列列表时,上报的队列数变化
private Set<String> queues = new HashSet<>();
try(ActiveMQConnection connection = (ActiveMQConnection)
jmsTemplate.getConnectionFactory().createConnection()){
connection.start();
for(ActiveMQQueue queue : connection.getDestinationSource().getQueues()){
queues.add(queue.getQueueName());
}
queues.remove(defaultReplyToQueue);
log.info("findAllQueues found {}", queues.size());
return queues;
}
【问题讨论】:
-
多次调用上述代码时,报出的队列数不等,有时相同,有时少,有时多
-
调用代码时是否还有其他活动
-
上面的代码是响应一个rest api调用而被调用的,结果不时变化,每次调用rest api都会调用上面的代码
标签: java spring-boot activemq spring-jms jmstemplate