使用CachingConnectionFactory缓存JMS会话

时间:2015-02-02 21:22:42

标签: java spring session jms

我了解到CachingConnectionFactory能够缓存JMS会话。但是,我不明白如何以编程方式检索缓存的会话。

My Spring配置如下所示:

<bean id="jmsConnectionFactory"
    class="org.springframework.jms.connection.CachingConnectionFactory">
    <construction-arg index="0" ref="connectionFactory"/>
    <property name="sessionCacheSize" value="50" />
</bean>

其中connectionFactory是由JNDI创建的连接工厂。

我创建会话的方式是:

QueueConnection connection = jmsConnectionFactory.createQueueConnection();
queueConnection.createQueueSession(false, Session.DUP_OK_ACKNOWLEDGE);

但是,看起来createQueueSession创建的会话始终是新会话而不是缓存会话。创建一个会话大约需要1.5毫秒,而这个会话听不到缓存的会话。

有人可以告诉我如何才能使会话缓存正常工作?

0 个答案:

没有答案