Setting up RMI ehcache replication with proper multicast address setting

538 views Asked by At

I am using replication with RMI type I have ehcache replication working when when both cache nodes are on same hosts.

But problem arises when i have two different host in same domain, replication fails.

One cache node on windows 8 and other cache node on CentOS 6.

I am not sure what settingsneed to done for multicast to be enabled on Linux box.

I also tried with manual discovery but the program just stuck. ehcache.xml snippet:

 <cacheManagerPeerProviderFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerProviderFactory" properties="peerDiscovery=automatic, multicastGroupAddress=230.0.0.1, multicastGroupPort=4446, timeToLive=32"/>    

 <cacheManagerPeerListenerFactory class="net.sf.ehcache.distribution.RMICacheManagerPeerListenerFactory" properties="hostName=10.30.10.439, port=40001, socketTimeoutMillis=2000"/>

  <defaultCache
        maxBytesLocalHeap="256000000"
        eternal="false"
        timeToIdleSeconds="120"
        timeToLiveSeconds="120"
        overflowToDisk="false"
        maxElementsOnDisk="10000000"
        diskPersistent="false"
        diskExpiryThreadIntervalSeconds="120"
        memoryStoreEvictionPolicy="LRU"
  />

  <!-- temp config: in memory cache,  expire after the session is idle for 10 minutes -->
  <cache name="ssoSessionStore"
        maxBytesLocalHeap="64000000"
        eternal="false"
        timeToIdleSeconds="600"
        timeToLiveSeconds="0"
        overflowToDisk="false"
        maxElementsOnDisk="20000"
        diskPersistent="false"
        diskExpiryThreadIntervalSeconds="120"
        memoryStoreEvictionPolicy="LRU">

         <cacheEventListenerFactory        
                    class="net.sf.ehcache.distribution.RMICacheReplicatorFactory"
                     properties="replicateAsynchronously=true
                       asynchronousReplicationIntervalMillis=100"
            propertySeparator=","
                    />

    <bootstrapCacheLoaderFactory
            class="net.sf.ehcache.distribution.RMIBootstrapCacheLoaderFactory"
            properties="bootstrapAsynchronously=true, maximumChunkSizeBytes=5000000"
            propertySeparator="," />
  </cache>

Similar ehcache.xml I configure on other node with different IP address keeping multicast address same.

I am not sure what settings i am missing . Please suggest.

0

There are 0 answers