JMS在spring中使用,如何配置以及使用什么类型的依赖项
Spring JMS有一些注意事项.
绝对不能直接在JMS连接工厂上使用Spring JMS.这是因为Spring - 特别是JmsTemplate - 打开一个连接,将它用于一条消息,然后关闭它.这是连接工厂实际上是连接池时使用的正确模式.但如果它真的只是一个连接工厂,那么你将在负载下屠杀服务器.当您运行独立应用程序而不是J2EE容器(通常具有资源适配器或其他为您汇集的东西)时,这通常只是一个问题.Spring确实提供了一个可以重用连接的SingleConnectionFactory bean,但是当你使用集群服务器并希望对连接和工作进行负载均衡时,这不是最好的解决方案.
Spring API都是围绕一次处理单个消息而设计的.在某些情况下,您可能能够处理一批消息,最好使用Spring为您提供连接工厂等,但可以使用自己的代码来实际执行消息I/O. 这样,您可以,例如,设置事务处理会话,处理100条消息,然后以批处理方式提交确认.这应该可以减少服务器上的工作量,假设您可以安全地这样做.
你可以查看Spring in Action.它有一章关于使用Spring的JMS进行消息传递,我发现它很有帮助.