Putting it all together
From JPPF 4.2 Documentation
|
Main Page > Configuration guide > Putting it all together |
After seeing all the configuration details for the JPPF components, we would like to take a step back and have a look at the big picture of what the configuration is about: defining a JPPF grid topology the way we want it. For this purpose, we will define a specific non-trivial topology, and make two diagrams of this topology, where the JPPF components in each diagram are annotated with the minimal set of configuration properties that must be defined. One diagram presents the configuration when the connections between components are defined manually, the other diagram when they are automatically discovered.
1 Defining a topology
Here is the JPPF topology we want to achieve:
Let's state plainly the components involved and their relationships:
- there are one client, two servers (server1 and server2) and two nodes (node1 and node2)
- the client is connected to both servers
- each server is connected to the other server
- node1 is connected to server1
- node2 is connected to server2
In the following diagrams a property definition between parentheses means that the definition uses a default value, and thus doesn't need to be defined. This notation is used to emphasize what default values actually mean. For convenience, we will also assume that server1 is on a machine with IP address 10.1.10.1 and server2 on a machine with the IP address 10.1.10.2. They also listen on ports 11111 and 11112, respectively.
2 Automatic discovery of the topology
As we can see, automatic discovery involves very few configuration properties. The discovery itself is active by default (jppf.discovery.enabled = true). The client actually does not need any property at all and will work with an empty configuration. The drivers only need to override properties that define non-default values. Lastly, the nodes specify an inclusive pattern for which server to connect to, otherwise they could pickup the wrong server, connect both to the same server, etc.
Also note that, if our topology only included server1, then no configuration property at all would be needed in the client, server1, node1 or node2. That is the power of automatic discovery in JPPF master/worker topologies.
3 Manual configuration of the topology
Main Page > Configuration guide > Putting it all together |