blob: 7213aa8001adf301ac09ae1e791abb9528b35641 [file] [log] [blame]
<?xml version="1.0"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to you under the Apache License, Version
2.0 (the "License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0 Unless required by
applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied. See the License for
the specific language governing permissions and limitations under the
License.
-->
<document>
<properties>
<title>Lateral TCP Auxiliary Cache Configuration</title>
<author email="ASmuts@apache.org">Aaron Smuts</author>
</properties>
<body>
<section name="Lateral TCP Auxiliary Cache Configuration">
<p> The following properties apply to the TCP Lateral Cache plugin.
</p>
<subsection name="TCP Configuration Properties">
<table>
<tr>
<th>Property</th>
<th>Description</th>
<th>Required</th>
<th>Default Value</th>
</tr>
<tr>
<td>TcpServers</td>
<td> This is the list of servers this cache should try to connect
to. With UDP discovery this is not necessary.</td>
<td>N</td>
<td>none</td>
</tr>
<tr>
<td>TcpListenerHost</td>
<td> This is the host this cache should listen on (for multi-homed hosts).</td>
<td>Y</td>
<td>listen on all interfaces</td>
</tr>
<tr>
<td>TcpListenerPort</td>
<td> This is the port this cache should listen on.</td>
<td>Y</td>
<td>n/a</td>
</tr>
<tr>
<td>AllowGet</td>
<td> Should this cache be allowed to get from other laterals.
False means that it can only put, i.e. send updates and remove
requests to other laterals. Lateral gets are not recommended for
performance reasons. This used to be controlled by the attribute
PutOnlyMode.</td>
<td>N</td>
<td>true</td>
</tr>
<tr>
<td>Receive</td>
<td> Should this cache receive or only send to other laterals. You
may want to set receive to false if you just need to broadcast to
other caches. If you have a feed data parser, that doesn't need
to receive updates, but you do want it to send invalidation
messages, then you would set receive to false. If receive is
false, the discovery service, if enabled, will only listen.</td>
<td>N</td>
<td>true</td>
</tr>
<tr>
<td>IssueRemoveOnPut</td>
<td> If this is set to true, then the lateral client will send a
remove command rather than a put command to any registered
listeners.</td>
<td>N</td>
<td>false</td>
</tr>
<tr>
<td>FilterRemoveByHashCode</td>
<td> If this is true, and IssueRemoveOnPut is true, the client
will include the hashCode of the element to remove. If it is also
true on the receiving end, the receiver will check to see if the
element exists. If the element exists, and the hashCodes are the
same, the item will not be removed.</td>
<td>N</td>
<td>false</td>
</tr>
<tr>
<td>SocketTimeOut</td>
<td> This allows you to set the socket (read) timeout.</td>
<td>N</td>
<td>1000</td>
</tr>
<tr>
<td>OpenTimeOut</td>
<td> This allows you to set the socket open timeout.</td>
<td>N</td>
<td>2000</td>
</tr>
<tr>
<td>UdpDiscoveryAddr</td>
<td> The address the UDP discovery process should broadcast
messages to.</td>
<td>N</td>
<td>228.5.6.7</td>
</tr>
<tr>
<td>UdpDiscoveryPort</td>
<td> The port the UDP discovery process should send messages to.
</td>
<td>N</td>
<td>6789</td>
</tr>
<tr>
<td>UdpDiscoveryEnabled</td>
<td> Whether or not the UDP discovery service should be used to
locate other lateral caches.</td>
<td>N</td>
<td>true</td>
</tr>
<tr>
<td>ZombieQueueMaxSize</td>
<td> The number of elements the zombie queue will hold. This queue
is used to store events if we lose our connection with the
server.</td>
<td>N</td>
<td>1000</td>
</tr>
</table>
</subsection>
<subsection name="Example Configuration">
<source><![CDATA[
jcs.auxiliary.LTCP=org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.LateralTCPCacheFactory
jcs.auxiliary.LTCP.attributes=org.apache.commons.jcs3.auxiliary.lateral.socket.tcp.TCPLateralCacheAttributes
#jcs.auxiliary.LTCP.attributes.TcpServers=
jcs.auxiliary.LTCP.attributes.TcpListenerPort=1118
jcs.auxiliary.LTCP.attributes.UdpDiscoveryAddr=228.5.6.8
jcs.auxiliary.LTCP.attributes.UdpDiscoveryPort=6780
jcs.auxiliary.LTCP.attributes.UdpDiscoveryEnabled=true
jcs.auxiliary.LTCP.attributes.Receive=true
jcs.auxiliary.LTCP.attributes.AllowGet=false
jcs.auxiliary.LTCP.attributes.IssueRemoveOnPut=false
jcs.auxiliary.LTCP.attributes.FilterRemoveByHashCode=false
jcs.auxiliary.LTCP.attributes.SocketTimeoOt=1001
jcs.auxiliary.LTCP.attributes.OpenTimeOut=2002
jcs.auxiliary.LTCP.attributes.ZombieQueueMaxSize=2000
]]></source>
</subsection>
</section>
</body>
</document>