Apache Tomcat 9 Configuration Reference (9.0.107) - The Cluster Deployer object
Author: Filip Hanik

## The Cluster Deployer object

### Table of Contents

- Introduction
- org.apache.catalina.ha.deploy.FarmWarDeployer
  1. Attributes

### Introduction

The Farm War Deployer can deploy and undeploy web applications on the other nodes in the cluster.

Note: FarmWarDeployer can be configured at host level cluster only.

### org.apache.catalina.ha.deploy.FarmWarDeployer

#### Attributes

Attribute | Description
--- | ---
`className` | The cluster deployer class, currently only one is available, `org.apache.catalina.ha.deploy.FarmWarDeployer.`
`deployDir` | Deployment directory. This is the pathname of a directory where deploy the web applications. You may specify an absolute pathname, or a pathname that is relative to the $CATALINA_BASE directory. In the current implementation, this attribute must be the same value as the Host's appBase.
`tempDir` | The temporaryDirectory to store binary data when downloading a war from the cluster. You may specify an absolute pathname, or a pathname that is relative to the $CATALINA_BASE directory.
`watchDir` | This is the pathname of a directory where watch for changes(add/modify/remove) of web applications. You may specify an absolute pathname, or a pathname that is relative to the $CATALINA_BASE directory. Note: if watchEnabled is false, this attribute will have no effect.
`watchEnabled` | Set to true if you want to watch for changes of web applications. Only when this attribute set to true, you can trigger a deploy/undeploy of web applications. The flag's value defaults to false.
`processDeployFrequency` | Frequency of the Farm watchDir check. Cluster wide deployment will be done once for the specified amount of backgroundProcess calls (ie, the lower the amount, the most often the checks will occur). The minimum value is 1, and the default value is 2. Note: if watchEnabled is false, this attribute will have no effect.
`maxValidTime` | FileMessageFactory instances used by the FarmWarDeployer are only retained while they are required. When receiving a WAR file, the associated FileMessageFactory instance is deleted once the WAR file has been fully received. To avoid memory leaks under various error conditions (part of the file never received, very slow message transfer, etc.), this attribute defines the maximum time permitted between receiving valid messages that contain part of the WAR file. If that maximum time is exceeded, the FileMessageFactory will be deleted and the WAR file transfer will fail for that node. If a negative value is specified, the FileMessageFactory will only be removed once the WAR file is fully received. If not specified, the default value of 300 (5 minutes) will be used.