How to properly to configure ActiveMQ with pooling?
===

We use following configuration for AMQ

    <bean id="jmsConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
		<property name="brokerURL" value="${brokerURL1}"/>
	</bean>
	<bean id="pooledConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory">
		<property name="maxConnections" value="10"/>
		<property name="maximumActive" value="100"/>
		<property name="connectionFactory" ref="jmsConnectionFactory"/>
	</bean>
    <bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration">
		<property name="connectionFactory" ref="pooledConnectionFactory"/>
		<property name="transacted" value="false"/>
		<property name="concurrentConsumers" value="5"/>
		<property name="maxConcurrentConsumers" value="10"/>
	</bean>
	
	<bean id="activemq" class="org.apache.activemq.camel.component.ActiveMQComponent">
		<property name="configuration" ref="jmsConfig"/>
	</bean>


Periodically I have strange issue - loose message. Actually AMQ says everything OK and message is dequeued but there is no message on app...

I've read it can be issue with caching consumers and instead JmsConfiguration should be used following config

    <bean id="jmsConfig" class="org.apache.activemq.camel.component.ActiveMQConfiguration">
		<property name="connectionFactory" ref="pooledConnectionFactory"/>
		<property name="transacted" value="false"/>
		<property name="concurrentConsumers" value="5"/>
		<property name="maxConcurrentConsumers" value="10"/>
		<property name="cacheLevelName" value="CACHE_CONSUMER"/>
	</bean>


Does anybody know how to properly to configure activemq?
which values should be set for best performance and good reliability?

    <property name="maxConnections" value="?"/>
    <property name="maximumActive" value="?"/>
    <property name="concurrentConsumers" value="?"/>
    <property name="maxConcurrentConsumers" value="?"/>


Should I use `org.apache.activemq.pool.PooledConnectionFactory` or there is better approach?