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.
To start multiple dispatchers on a single host, create a copy of the application server
configuration file (default as.xcf) for each dispatcher. Each dispatcher will
have its own uniquely-named configuration file, and each configuration file must take into account
the settings for the elements shown in Table 1.
Element(s) | Setting values across dispatchers |
---|---|
TCP_SERVER_PORT |
A GAS dispatcher listening port is set by the TCP_SERVER_PORT element. Each
dispatcher on a server requires a unique listening port. In fact, all port
numbers – both the listening ports and the set admin ports – must be unique between all the
dispatchers. |
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 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)
You can share the same configuration file between all the dispatchers provided you run the
dispatcher with the
-E
option to override the resources shown in Table 2 for each instance with
different values.Element (s) | Resource | Override example |
---|---|---|
TCP_SERVER_PORT |
res.ic.server.port |
httpdispatch -E
res.ic.server.port=dispatcher1-server-port |
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 |