私は ehcache を JMS レプリケーションで使用し、ActiveMQ を JMS サーバーとして使用しています。現在、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 が起動すると、休止状態の構成が読み取られ、休止状態がロードされているときにアプリがフリーズしてブローカーを待機するためです。
誰かがこの問題を回避していますか?
spring jmsTemplate 構成を使用して ehcache.xml jndi エントリを構成する方法があるかどうかを考えています。