| <?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.jcs.auxiliary.lateral.socket.tcp.LateralTCPCacheFactory |
| jcs.auxiliary.LTCP.attributes=org.apache.commons.jcs.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> |