Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jms Bitronix PoolgConnectionFactory与SpringFramework CachingConnectionFactory_Jms_Connection Pooling_Spring Jms_Bitronix - Fatal编程技术网

Jms Bitronix PoolgConnectionFactory与SpringFramework CachingConnectionFactory

Jms Bitronix PoolgConnectionFactory与SpringFramework CachingConnectionFactory,jms,connection-pooling,spring-jms,bitronix,Jms,Connection Pooling,Spring Jms,Bitronix,配置为缓存大于1的CachingConnectionFactory和poolgconnectionfactory之间有什么区别吗 我在不同的项目中都看到过这两种情况,我想了解选择其中一种的理由。这实际上取决于您的用例 bittronix factory对连接进行池化,并为每次使用提供不同的连接(并将其返回池中) CachingConnectionFactory使用单个连接并缓存会话、生产者和消费者。这真是一个奇怪的问题。你需要XA吗?如果是,那么您别无选择,只能选择PoolgConnection

配置为缓存大于1的CachingConnectionFactory和poolgconnectionfactory之间有什么区别吗


我在不同的项目中都看到过这两种情况,我想了解选择其中一种的理由。

这实际上取决于您的用例

bittronix factory对连接进行池化,并为每次使用提供不同的连接(并将其返回池中)


CachingConnectionFactory
使用单个连接并缓存会话、生产者和消费者。

这真是一个奇怪的问题。你需要XA吗?如果是,那么您别无选择,只能选择PoolgConnectionFactory。你不需要XA?那就不用再为Bitronix操心了,还是用CachingConnectionFactory吧。

如果你使用像Bitronix(或Atomikos)这样的可插拔XA事务管理器,使用它们的池实现而不是Spring实现,因为它们执行额外的操作,比如自动登记XA事务中的资源

Bitronix池包括:

  • 用于jdbc的bitronix.tm.resource.jdbc.PooligDataSource
  • bitronix.tm.resource.jms.PoolgConnectionFactory for jms
值得一看Bitronix测试用例,了解如何设置池的示例:


谢谢您的回答。你能给我举一些例子,其中CachingConnectionFactory是一个更好的选择,而poolgconnectionfactory是一个更合适的选择吗;我不知道bitronix——我只是指出了实际实现中的差异。