Mesh Set-up
If you choose not to use an RMI hub, then change-generating servers must send invalidation events to all other servers rather than sending them just to the RMI hub.
To set up your installation in this way, you need to edit the
following configuration layer .properties
files.
For general information about configuration layers and how to edit
them, see Configuration Layers. The files you need
to edit are:
- configuration-layer-root
/Initial.properties
-
Make sure the following properties are set for all servers (that is, set them in the common layer):
service.1.1-remote-expire=/neo/io/services/RemoteExpireServiceBootstrap service.1.2.5-api=/io/api/RMIBootstrap
- configuration-layer-root
/io/api/EventManager.properties
-
For change-generating servers only, the
remoteServers
property must be contain a comma-separated list of servers to which invalidation events must be set. There must be one entry in the list for every other Content Engine instance in the installation, and each entry must have the form:host-address:8123
where host-address is either the host name or IP address of the host on which the target Content Engine instance is running.
Since this setting is only required on change-generating servers, you should add the property to the appropriate host configuration layers (or possibly to a family configuration layer).
- configuration-layer-root
/neo/io/services/RemoteExpireService.properties
-
For change-generating servers only, the
remoteManagers
property must be contain a comma-separated list ofEventManager
s to which invalidation events must be set. There must be one entry in the list for every other Content Engine instance in the installation, and each entry must have the form:rmi://host-address:8123/io/api/EventManager
where host-address is either the host name or IP address of the host on which the target Content Engine instance is running.
Since this setting is only required on change-generating servers, you should add the property to the appropriate host configuration layers (or possibly to a family configuration layer).
The following examples show the configuration for two
change-generating servers (input1
and
input2
), and two presentation-only servers
(presentation1
and
presentation2
).
Here are the properties that need to be set in
configuration-layer-root/Initial.properties
(common layer):
service.1.1-remote-expire=/neo/io/services/RemoteExpireServiceBootstrap service.1.2.5-api=/io/api/RMIBootstrap
Here are the properties that need to be set in the host
configuration layer for input1
. First
configuration-layer-root/io/api/EventManager.properties
:
remoteManagers=rmi://input2:8123/io/api/EventManager, rmi://presentation1:8123/io/api/EventManager, \ rmi://presentation2:8123/io/api/EventManager
then
configuration-layer-root/neo/io/services/RemoteExpireService.properties
:
remoteServers=input2:8123, presentation1:8123, presentation2:8123
Here are corresponding properties for input2
.
First
configuration-layer-root/io/api/EventManager.properties
:
remoteManagers=rmi://input1:8123/io/api/EventManager, rmi://presentation1:8123/io/api/EventManager, \ rmi://presentation2:8123/io/api/EventManager
then
configuration-layer-root/neo/io/services/RemoteExpireService.properties
:
remoteServers=input1:8123, presentation1:8123, presentation2:8123
You can see from the above example that in a large installation with many servers, it can be quite difficult to ensure that these properties are correctly set on all servers. That is why the RMI hub set-up is recommended.