Clustered Deployment
Any production deployment of a server has to fulfill two basic needs as follows:
- High availability: ability to serve client requests by tolerating failures.
- Scalability: ability to serve a large number of clients sending a large number of requests without degrading performance.
The main requirement that appears when facilitating the above two is the ability to manage clustered deployments from a single point.
Enterprises have to process large numbers of business-critical transactions per day, when clients connect simultaneously to the systems and initiate transactions. Therefore, the servers hosting Web services have to support a high level of performance and concurrency. These requirements demand production-ready servers to maintain very low downtime. However, it is almost impossible to support the required level of scalability and availability from a single server despite how powerful its hardware or how efficient its server software is. The answer is in Web services clustering.
Clustering allows to deploy and manage several instances of identical Web services across multiple servers running on different server machines. You can distribute client requests among these machines using a suitable load balancing system to achieve the required level of availability and scalability.
The WSO2 Data Services Server supports clustering out of the box. It offers functionalities like configuring clustered instances from a single point and replication of configurations as well as client sessions.
The WSO2 Data Services Server Clustering
Clustering in the WSO2 Data Services Server is based on the Tribes group management system. It provides group membership handling and group communication for clustered Data Services Server instances. Although the Data Services Server is shipped with this built-in Tribes based implementation, other clustering implementations based on different group management systems can be plugged in easily. You only have to implement a set of clustering interfaces provided by the Data Services Server.
Proceed to Clustering Configuration for specific details on setting up clustering using the WSO2 Data Services Server.