【问题标题】:do i need to close the activemq connection if using pooledconnectionfactory如果使用 pooledconnectionfactory,我需要关闭 activemq 连接吗
【发布时间】:2013-01-11 02:26:46
【问题描述】:

我正在使用 activemq PooledConnectionFactory 创建连接。我正在创建线程,每个线程都有自己的连接、会话和生产者。 我有两个疑问: 1.我是否需要在代码中自己关闭连接、会话、生产者,或者一旦生产者发送消息成功,pooledConnectionFactory 会这样做。 2. 为每个线程(最终为每条消息)创建连接将成为性能瓶颈。是否可以只有一个连接,其中包含许多会话(或者会话和连接之间应该存在一对一的映射,我想我在 activemq 网站的某个地方读到了这个)

任何帮助将不胜感激。

【问题讨论】:

    标签: activemq


    【解决方案1】:

    您需要像使用任何其他 JMS 连接、会话和生产者一样使用代码。检测线程何时完成并没有什么魔力,您需要关闭它,这会将其返回到池中。您只能使用一个连接并从中获取多个会话,但您需要关闭它们,以便它们返回池以便按需分发给其他人。

    【讨论】:

    • 但是当我关闭会话和连接时,它抱怨(运行时)连接已经关闭。我发送消息的代码在运行方法中,由多个线程访问(每个线程处理一条消息)。我相信每个线程都有自己的连接和会话实例,那么为什么另一个运行此代码的线程会抱怨关闭连接,如果我在代码末尾关闭连接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    • 2012-04-07
    • 2015-02-04
    • 2013-10-22
    • 1970-01-01
    • 2011-12-09
    相关资源
    最近更新 更多