Unwired Platform clusters are groups of similar components that work together to service client requests.
A cluster is a parallel or distributed computing system made up of many discrete systems that form a single, unified computing resource. Through clustering, you can partition the system load across redundant Unwired Platform components to design a highly-available mobility system architecture.
There are two key tiers in a cluster: Unwired Servers (the server tier) and runtime databases (the data tier). These tiers may then further be supported by a relay server and perhaps a load balancer depending on the scale of your rollout. However, each tier uses a different type of cluster model:
- Load-balancing server tier clusters – improve the system performance by sharing workloads and requests, and improving the efficiency of Unwired Server services (like synchronization and deployment). Requests initiated from the user are managed by a load balancer, and distributed by relay servers (or some other mechanism) among all the Unwired Server nodes that are part of the cluster. Every node in the Unwired Server cluster scales automatically when another node joins or leaves the cluster.
- Failover data tier clusters – improve the availability of runtime database services to Unwired Servers. Failover clusters have at least one redundant node, which provides data tier services when the primary node hosting the databases fail. The most common size for a failover consolidated database cluster is two nodes, which is the minimum requirement to provide redundancy and thereby eliminate single points of failure.
Note: The data tier does not need a relay server, since it will not be accessed directly from mobile devices or systems outside the firewall.
Each cluster includes a primary server, and a group of participating servers that are sometimes refered to as secondary servers or slaves:
- The primary server – contains the master copy of the configuration repository for all servers in the cluster. The primary server distributes its configuration to the other servers in the cluster.
When a primary server fails, a new primary is elected from the remaining secondary servers.
- The secondary server – gets its configuration from the primary server. Servers must have unique names but are identified as members of the same server farm as the primary server.
Each Unwired Server in a cluster runs on different hosts, so that it can connect to the data tier independently, as well as have its own copy of the system files required for component execution. Sybase recommends that you run each cluster member from its own installation directory.