Configure multiple dispatchers
If you have multiple dispatchers on a host, you must specify unique ports and application data directories for each dispatcher to ensure dispatcher information does not get mixed up.
While multiple dispatchers are typically not needed, you might have multiple dispatchers to support different environments using the same version of the Genero Application Server on the same host. For example, you may wish to co-locate your production, training, and development environments.
Element(s) | Setting values across dispatchers |
---|---|
TCP_BASE_PORT + TCP_PORT_OFFSET |
A GAS dispatcher listening port is set by adding the port offset to the base port. Each
dispatcher on a server requires a unique listening port. In fact, all port
numbers – both the computed listening ports and the set admin ports – must be unique between all the
dispatchers. Tip:
Giving a different |
TCP_ADMIN_PORT |
The admin port is for GAS administration tasks. Each dispatcher on a server requires a unique admin port. In fact, all port numbers – both the computed listening ports and the set admin ports – must be unique between all the dispatchers. |
res.appdata.path (Application data directory) |
The application data directory is the directory for GAS data files. It is recommended that
the directory be unique between all the dispatchers. Tip:
While not recommended, you can share the application data directory between dispatchers. For more information, see Shared application data directory. |
SOCKET_PATH (socket path directory) |
A unique socket path is needed for each dispatcher. By default, SOCKET_PATH
is configured as /tmp for Linux®/UNIX™ systems. It is mandatory to set a unique path in the
SOCKET_PATH element for each dispatcher in your multiple dispatcher configuration
environment. Important: Socket path length
UNIX socket path length is system dependent and cannot exceed a specific limit. |
Dispatcher override option (-E)
-E
option to override the resources shown in Table 2 for each instance with different values.Element (s) | Resource | Override example |
---|---|---|
TCP_BASE_PORT |
res.ic.base.port |
httpdispatch -E
res.ic.base.port=dispatcher1-base-port |
TCP_PORT_OFFSET |
res.ic.port.offset |
httpdispatch -E res.ic.port.offset=myOffset |
TCP_ADMIN_PORT |
res.ic.admin.port |
httpdispatch -E
res.ic.admin.port=dispatcher1-admin-port |
res.appdata.path (Application data directory) |
res.appdata.path |
httpdispatch -E
res.appdata.path=/work/tmp/gas/appdata1 |
SOCKET_PATH (socket path directory) |
res.dispatcher.socket.path |
httpdispatch -E res.dispatcher.socket.path=/tmp1 |