DefaultMessageListener容器的文档为:
"Message listener container variant that uses plain JMS client API, specifically a loop of MessageConsumer.receive() calls"
正如Juergen在帖子http://forum.spring.io/forum/other-spring-related/remoting/24208-what-s-the-best-practice-for-using-jms-in-spring中所述,我可以理解这是值得推荐的方法。
但基本上害怕它所带来的拉动机制,因为一般认为事件驱动机制在资源使用和阻塞行为方面优于拉模型。
使用DefaultMessageListener时是否会出现任何问题或疑虑。
请告知
答案 0 :(得分:1)
它确实成为事件驱动的;容器没有轮询服务器,它轮询客户端库以查看是否有任何新消息到达。它确实没有使用任何重要的资源。
如果您担心,可以增加接收超时;缺点是容器对stop()
请求的响应性较低。