我编写了一个在 Glassfish 中的 Web 服务中运行的 JMS 应用程序(也将其部署在 JBoss 中),我注意到在我通过 MessageListener MDP 处理多条消息后,JMS 服务器会耗尽连接!
尝试使用 Apache ActiveMQ 和 Glassfish 内部 JMS 代理(openMQ?)
有没有办法检查为什么会发生这种情况?如果这是 JmsTemplate 的默认行为,我可以用什么方法正确开发 JMS 生产者和消费者?
谢谢!
最佳答案
每次接收或发送消息时,spring JMSTemplate 都会关闭并创建所有资源(Connections、Consumers、Producers ..)。 如果您不使用池连接、 session 、消费者……,这将是一个巨大的性能瓶颈。
话虽如此,是的,JMSTemplate 应该每次都关闭您的连接。
关于java - Spring JmsTemplate 是否默认关闭连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4074073/