Skip to main content

Digital Experience

The Concept Of Clustering

This blog is intended for the beginners of Websphere application server. Before starting with what a cluster is, let’s brush up from the basics as follows:

Application Server: An application server acts as a middle-tier component between the front-end application serving business logic and back-end persistent database.

Node: It is a logical group of Application servers.

Node Agent: The node agent distributes the instructions, administrative requests to nodes and synchronize all the application servers with the deployment manager.

Cell: Logical grouping of nodes are called cell.  It involves in administrative activities. A cell can contain many clusters. Intern every cluster can have one or more nodes.

Deployment manager: It’s a WebSphere instance that acts as the administrative controller of the cell (also implementing that it gains control over the nodes and application servers)

Clusters:

The very first thing that comes to mind when the word cluster comes up is a “group”. Yes, clusters are nothing but group of application servers. A cluster can contain multiple instances of the same application server to attain application high availability and failsafe condition.  The term failsafe is used because it helps to avoid either a process failover or a machine failover. Clustering ensures that the members are working and they have the same configuration as provided by the administrator. The other features will include its

  • Scalability: It is the capability of the cluster to provide the administrator to add or remove the nodes in order to improve the application performance. This does not affect the functioning of the entire cluster.
  • Fault tolerance: The server might be down due to any reason, but in that instance there should be some back up for the application running on that particular server. Hence the cluster helps in this situation, when the server is down its process is continued by another server until it is up and running.
  • Redundancy: There needs to be back up of anything and everything that we do so in case we lose data or change the configurations by mistake or there is corruption then the best solution would be using the backed up data. Clustering provides redundant systems.
  • Session Affinity: To avoid replication of a sessions data, the session affinity is enabled which when a user hits an HTTP request, it routes to the same HTTP session.
  • Load balancing: The HTTP server plugin manages the load and distributes the load among the members of the cluster.
  • Parallel processing: For standalone server there are n number of requests pouring down for the server to process. In such a case the server can’t handle the load as well as the speed is slowed very much considerably and hence time consuming. To increase the speed of processing and to handle the n number of requests, clustering makes it possible to process the request in parallel servers.

Types of clusters:

Basically there are two types of clusters,

  1. Vertical cluster: This type of cluster has all the cluster members in a single physical machine. This type of scaling is used to avoid “process failover”.
  2. Horizontal cluster: This type of cluster has the cluster members in different physical machines. This type of scaling is mainly used to avoid “machine failovers”.

Both have their own advantage and disadvantages. Hence to have better performance and improve stability a mixed type of cluster will be more helpful which helps with back up of the servers and also high availability of the servers.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.