2012-07-11 20 views
2

正如标题所说,它们有什么不同以及如何做出选择? 我不知道彼此有什么相同的东西吗? 如果我想做一个保持连接的连接?这就是说,一旦我连接到activemq服务器, 我可以使用连接发送/接收消息,只要我想。我想我可以叫它 daemonProducer或daemonConsumer。 activemq可以执行这个吗?activemqconnectionfactory和pooledconnectionfactory有什么区别?

回答

2

ActiveMQConnectionFactory创建ActiveMQ连接。 PooledConnectionFactory池连接。如果您只需创建一个连接并将其保持很长一段时间,则无需共享。如果您倾向于随着时间的推移创建多个Connection实例,则Pooling会更好,因为连接操作繁重,可能会成为性能瓶颈。

+0

感谢您的回复。还有一个问题,ActiveMQ连接和从连接池中的连接可以让他们长时间运行?会话将始终有效并且不会过期? – pythonee 2012-07-11 15:07:27

+0

那么你应该看看PooledConnectionFactory的API。默认情况下,池化版本在一段时间不使用之后将空出旧连接。在您调用close()或不再引用它之前,从其工厂创建的ActiveMQ连接有效。 – 2012-07-11 20:46:38