我试图在两台tomcat服务器上使用RMI设置EHcache复制。设置如下 -
我的ehcache.xml配置如下,适用于server1.com
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="ehcache.xsd" updateCheck="true"
monitoring="autodetect" dynamicConfig="true">
<!-- Configure the default behavior of caches defined in this server -->
<defaultCache maxElementsInMemory="100" eternal="false" timeToIdleSeconds="120" timeToLiveSeconds="200">
</defaultCache>
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
properties="peerDiscovery=manual,rmiUrls=//server2.com:40001/testCache"/>
<!-- Configure a cache manager peer listener that listens for messages from peers -->
<cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory"
properties="hostName=solr2.souq.com, port=40001,socketTimeoutMillis=2000"/>
<cache name="testCache" eternal="false" timeToIdleSeconds="100"
timeToLiveSeconds="100" overflowToDisk="false">
<cacheEventListenerFactory class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
properties="replicateAsynchronously=true, replicatePuts=true, replicateUpdates=true,
replicateUpdatesViaCopy=false, replicateRemovals=true "/>
</cache>
对于server2.com,rmiUrl是唯一的修改
<cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory"
properties="peerDiscovery=manual,rmiUrls=//server2.com:40001/testCache"/>
测试这种安排,
请告诉我这里出了什么问题?
答案 0 :(得分:1)
找到解决方案..发布在这里以防任何人在同一个冰山上挣扎 -
我需要指示实体使用我创建的testCache区域。默认情况下,除非hbm.xml文件中的“cache-region”标记明确提到,否则所有实体都使用默认缓存区域