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.
- Create a copy of the application server configuration file (default as.xcf) for each dispatcher. Each dispatcher must have its own uniquely-named configuration file.
- Specify different settings for the elements shown in Table 1 in each configuration file.
- If using Apache web server, you must create different
ProxyPass
andProxyPassReverse
directives in the Apache configuration for eachfastcgidispatch
dispatcher, as Apache must deliver requests to the GAS with the corresponding port and path alias. For more information on configuring Apache, go to FastCGI GAS configuration on various web server. - If using Internet Information Services (IIS) web server, you must create a different application pool for each isapidispatch dispatcher, each with its own application root directory containing the isapidispatch.ini file. For more information on configuring IIS, go to Manual configuration for IIS 8.x and IIS 10.x.
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 |