If you want to perform unit testing or quick restarts, you might find it more convenient to avoid the network and run in single-server mode. To constrain Coherence to run on a single server, set the multicast packet time-to-live to 0, and set the unicast IP address to an address that is not currently being used; for example: 127.0.0.1.
You can configure these properties either by declaring system properties on the command line or by editing the values in the operational configuration descriptor, tangosol-coherence.xml file.
In the tangosol-coherence.xml file, the multicast packet time to live value is defined by the <time-to-live> sub-element of the <multicast-listener> element. The <time-to-live> value determines the maximum number of "hops" a packet may traverse between network segments. Setting this sub-element to "0" keeps the packets from leaving the originating machine.
The unicast IP address is defined by the <address> sub-element of the <unicast-listener> element. This sub-element specifies the IP address that a Socket will listen or publish on and must be routed to loopback as well. Setting this sub-element to an IP address that is never used will prevent Coherence from joining the network.
The "localhost" setting may not work on systems that define localhost as the loopback address; in that case, specify the machine name or the specific IP address.
The following XML code fragment illustrates a single server mode configuration in the tangosol-coherence.xml file.
Coherence defines system properties that allow you to set the multicast packet time-to-live and the unicast IP address for single server mode on the command line. This feature is useful when you need to change the settings for a single JVM, or if you want to start an application with settings that differ from those in the descriptor files.
The following system properties can be used to define single server mode.
- tangosol.coherence.ttl – Multicast packet time to live. Set to "0" to keep the packets from leaving the originating machine.
- tangosol.coherence.localhost – Unicast IP address. Set to an address that is not currently being used; for example: 127.0.0.1.
The following sample command line illustrates starting coherence in single server mode:
java -Dtangosol.coherence.localhost=127.0.0.1 -Dtangosol.coherence.ttl=0 -jar coherence.jar
See Command Line Setting Override Feature for more information on system properties defined by Coherence.