A Primer on J2EE Clusters for Webhosting
(Page 1 of 4 )
Hosting websites often means guaranteeing a certain amount of uptime for your clients' sites -- especially when you are hosting e-commerce sites, where time offline means money lost. Often, the best way to maintain this uptime involves using server clusters. This article explains the advantages of server clusters and describes several cluster configurations you might consider using, depending on your situation.
Definition of a Cluster
A cluster is a parallel or distributed system consisting of independent computers that cooperate as a single system. Generally speaking, clusters offer a way to utilize computer resources more productively in comparison to when the same number of machines are working in a standalone format. In a cluster, the total result is greater than the sum of the separate parts.
Basically, vendors of J2EE application servers implement cluster technology in one of the following two ways: with and without a dispatcher. Both implementations have advantages and disadvantages, but they will not be discussed in detail in this article.
In the cluster implementation with a dispatcher, the dispatcher stands in front of the whole group of machines and accepts incoming client requests. To clients, the whole group of machines in the cluster appears as one unit; the IP address of the dispatcher is the IP address of the whole cluster. Clients neither see the IP addresses of the servers in the cluster, nor need to be aware that there are multiple IP addresses. But cluster administrators, of course, know the IP addresses of the dispatchers and servers in the cluster.
The other implementation of cluster technology is a cluster without a dispatcher. In it, all machines communicate directly with each other. This type of cluster requires that all machines have static IP addresses, which must be visible and reachable for clients.
When clustered, servers are still physically separated as different machines. They share data storage and management resources, but they do not share memory or processors. The main advantages of clusters are scalability, high availability, load balancing, fail over, and easy administration.
More Web Hosting How-Tos Articles
More By Blue Moon