Multi-level cluster structure |
Cluster service nodes in a single-level cluster have three major functions: monitoring GIS application nodes, updating load balancing information, and sends feedback to the client. The cluster services in SuperMap iServer have two other functions added to the original functions, i.e., monitoring information on cluster service nodes and reporting information on the cluster service nodes to a higher level node. That is to say, SuperMap iServer can support multi-level cluster structure.
A multi-level cluster structure is no longer limited by the constriction that only GIS application nodes can be added to a cluster service as in conventional cluster technology. It supports any cluster service nodes and GIS application nodes to be dynamically added to a cluster service, constructing a multi-level cluster structure that can effectively improve the GIS service capacity and the GIS computation efficiency. A multi-level cluster structure is shown in figure 4:
Figure 4 The structure of a distributed hierarchical cluster
A distributed hierarchical cluster is composed of multiple root cluster service nodes, multiple child cluster service nodes, and multiple GIS application nodes. There is redundancy design of GIS application nodes and cluster service nodes on each level, in order to ensure the fault-tolerance capacity of the entire cluster system.
In a multi-level cluster structure, a root cluster service node can include one or more child cluster service nodes, and/or one or more multiple GIS application nodes. In the structure shown in figure 4, the root cluster service node has four child cluster service nodes A1, A2, B1, and B2, as well as two GIS application nodes n1 and n2. A child cluster service node can have one or more second-level child cluster service nodes, and/or one or more GIS application nodes. For example, child cluster service node A2 has two second-level cluster service nodes a1 and a2, and two GIS application nodes m1 and m2. Based on this principle, a large GIS service system can be formed through hierarchical combination of multi-level cluster structures.
In a cluster system in SuperMap iServer, all child cluster service nodes and GIS application nodes are registered to the cluster system dynamically. Similarly, they can be dynamically removed from the system. In a multi-level cluster structure, a root cluster service node is responsible for the following tasks: monitoring information on the lower-level GIS application nodes, and/or load balancing information of the lower-level cluster services; updating load balancing information of the root cluster service node based on obtained information on the GIS application nodes and/or information on the child cluster service nodes; receiving service requests from a client, and selecting GIS application nodes that satisfy the specified service requests based on load balancing information of the root cluster service node; returning information about the selected GIS application nodes to the client, so that the client can be automatically connected to the GIS application node that is best for the request. The functions of a child cluster service node include the functions of a cluster service node in a single-level cluster service structure described in the previous sections. Additionally, a child cluster service node here can also monitor information on the lower-level child cluster service nodes, and report load balancing information of this cluster service node to a higher-level (root) cluster service node.
A GIS application node handles the same task as a GIS application node in a single-level cluster service structure does. If a GIS application node is not connected to a client, it is only responsible for responding to the GIS requests from a client and reporting its status information to a higher-level cluster service node. If it is directly connected to a client, then it also needs to send the service request from the clients to the connected cluster system. The cluster system will then select GIS application nodes that satisfy the service requests based on load balancing information of the cluster service and return the node information of the selected service node, so that the client can be automatically connected the GIS service node that is best for its request.Copyright© 2000-2012 SuperMap Software Co., Ltd. All Rights Reserved.