Glassfish + ActiveMQ MDB处理消息,延迟120秒

时间:2016-10-04 19:58:39

标签: java glassfish jms activemq

我已配置MDB以侦听外部ActiveMQ代理上的队列。它工作正常,但MDB从队列中获取一条消息,并且仅在延迟2分钟后才开始处理。我没有配置任何超时,但它看起来真的有一种延迟处理的属性。有人可以建议我如何调整此延迟并切换到立即处理?

1 个答案:

答案 0 :(得分:2)

很长一段时间它是Glassfish中的一个老虫。

这里记录了一个错误,但现在这个网站也关闭了。 http://java.net/jira/browse/GLASSFISH-1429

添加System.exit(0)(在finally块中),关闭所有线程。

try{
code ...

}finally{
 System.exit(0) ;
}

您还可以启用调试:

1)启用jstack以查看mdb-thread-pool中有多少个线程 使用

2)尝试启用工作管理器和线程池的监视统计信息: http://download.oracle.com/docs/cd/E19879-01/820-4335/6nfqc3qp8/index.html