【问题标题】:ActiveMQ DefaultMessageListenerContainer Why Only One Connection?ActiveMQ DefaultMessageListenerContainer 为什么只有一个连接?
【发布时间】:2019-05-24 10:31:33
【问题描述】:
<bean id="amqConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
  <property name="brokerURL" value="${mq.activemq.host}" />
  <property name="userName" value="${mq.activemq.user}" />
  <property name="password" value="${mq.activemq.pass}" />
  <property name="maxThreadPoolSize" value="30" />
</bean>
<bean id="amqPooledConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory" destroy-method="stop">
  <property name="connectionFactory" ref="amqConnectionFactory" />
  <property name="maxConnections" value="10" />
  <property name="maximumActiveSessionPerConnection" value="300" />
  <property name="idleTimeout" value="60000" />
</bean>
<bean id="queueListenerContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
    <property name="connectionFactory" ref="amqPooledConnectionFactory" />
    <property name="destination" ref="queueDestination" />
    <property name="messageListener" ref="queueAwareMessageListener" />
    <property name="taskExecutor" ref="queueListenerTaskExecutor" />
    <property name="concurrency" value="5-30" />
</bean>

maxThreadPoolSizemaxConnectionsmaximumActiveSessionPerConnectionconcurrency之间是什么关系?

为什么我设置了maxConnections = 10,而Listener在Connections中只有一个Connector,不能增加更多?

消费者的数量是正确的。初始化时有5个,随着变化逐渐增加。

【问题讨论】:

    标签: spring spring-mvc activemq


    【解决方案1】:

    关于将使用的连接数的底线由您配置的org.springframework.jms.listener.DefaultMessageListenerContainer 确定(因为这是此处实际创建连接的唯一组件)。据我所知,它只会创建一个 single 连接,因此在这里使用连接池似乎毫无意义。 concurrency 参数只是控制连接上consumers 的并发数。

    通过在org.apache.activemq.pool.PooledConnectionFactory 上设置maxConnections = 10,您只是在限制连接池的大小。但是,由于queueListenerContainer 不会多次调用createConnection(),这并不重要。

    您可以在the ActiveMQ documentation 中阅读有关org.apache.activemq.ActiveMQConnectionFactorymaxThreadPoolSize

    【讨论】:

      猜你喜欢
      • 2012-08-16
      • 1970-01-01
      • 2015-02-27
      • 1970-01-01
      • 2013-05-21
      • 2017-11-24
      • 2011-08-13
      • 1970-01-01
      • 2016-03-29
      相关资源
      最近更新 更多