Coherence clustering configuration

Gayathri Rao picture Gayathri Rao · Jun 8, 2011 · Viewed 8.7k times · Source

I am new to oracle coherence and trying out a POC to use coherence as a distributed cache for our application. This is in my dev environment, I am trying to have a clustered setup with two coherence client instances. The changes I did was to create tangosol_coherence_override.xml and coherence-cache-config.xml Below are the details present.

As suggested in the user guide when i start one instance of default cache server and two instances of coherence, they are not clustered, changes made on console on one coherence does not reflect on the other.

The changes I did was to set a unicast address and port, configure the cluster name and port. Any pointers or sample configuration files would help. My machine ip - 10.209.14.17

tangosol_coherence_override.xml

<?xml version='1.0'?>

   <coherence  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
            xmlns="http://xmlns.oracle.com/coherence/coherence-operational-config"
            xsi:schemaLocation="http://xmlns.oracle.com/coherence/coherence-operational-config coherence-operational-config.xsd">

   <cluster-config>
      <member-identity>
         <cluster-name system-property="tangosol.coherence.cluster">GR</cluster-name>
      </member-identity>


      <unicast-listener>
         <address system-property="tangosol.coherence.localhost">10.209.14.17
         </address>
         <port system-property="tangosol.coherence.localport">8090</port>
         <port-auto-adjust system-property="tangosol.coherence.localport.adjust">
            true
         </port-auto-adjust>
      </unicast-listener>
    <multicast-listener>
         <address>224.3.7.0</address>
         <port>4280</port>
         <time-to-live>0</time-to-live>
      </multicast-listener>
   </cluster-config>

   <configurable-cache-factory-config>
      <init-params>
         <init-param>
            <param-type>java.lang.String</param-type>
            <param-value system-property="tangosol.coherence.cacheconfig">
               coherence-cache-config.xml</param-value>
         </init-param>
      </init-params>
   </configurable-cache-factory-config>
</coherence>

coherence-cache-config.xml

<?xml version="1.0"?>

<cache-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns="http://xmlns.oracle.com/coherence/coherence-cache-config"
   xsi:schemaLocation="http://xmlns.oracle.com/coherence/coherence-cache-config
   coherence-cache-config.xsd">
   <caching-scheme-mapping>
      <cache-mapping>
         <cache-name>voCache</cache-name>
         <scheme-name>distributed</scheme-name>
      </cache-mapping>
   </caching-scheme-mapping>

   <caching-schemes>
      <distributed-scheme>
         <scheme-name>distributed</scheme-name>
         <service-name>DistributedCache</service-name>
         <backing-map-scheme>
            <local-scheme/>
         </backing-map-scheme>
         <autostart>true</autostart>
      </distributed-scheme>
   </caching-schemes>
</cache-config>

Answer

cpurdy picture cpurdy · Jun 13, 2013

Perform a Coherence multicast test as per the documentation: http://docs.oracle.com/cd/E18686_01/coh.37/e18679/tune_multigramtest.htm

If multicast is disabled, use WKA: http://docs.oracle.com/cd/E18686_01/coh.37/e18677/cluster_setup.htm#CEGEADBE