我使用带有JMS复制的ehcache和作为JMS服务器的ActiveMQ。 它目前用于使用Hibernate 3.6.7缓存数据库结果
我的cacheManager配置如上:
<cacheManagerPeerProviderFactory
class="net.sf.ehcache.distribution.jms.JMSCacheManagerPeerProviderFactory" properties="initialContextFactoryName=br.com.sonner.iss.jms.ExampleActiveMQInitialContextFactory,
providerURL=failover:tcp://localhost:6969,userName=XXX,password=YYYY,
replicationTopicConnectionFactoryBindingName=topicConnectionFactory,
replicationTopicBindingName=ehcache,
getQueueConnectionFactoryBindingName=queueConnectionFactory,
getQueueBindingName=ehcacheGetQueue"
propertySeparator=","
/>
复制和故障转移正常工作。如果JMS发生故障(复制停止),则在JMS服务器再次启动时重新启动。
我面临的唯一问题是,如果JMS服务器在我的应用程序启动时出现故障。该应用无法启动。
可能是因为当Spring上升时它会读取hibernate配置,当hibernate加载时,应用程序就会冻结等待代理。
有没有人有这方面的工作?
我在想是否有办法使用spring jmsTemplate配置来配置ehcache.xml jndi条目。