Archive for November, 2009

Chapter 17: Clustering The Need for High Availability

Wednesday, November 4th, 2009

Chapter 17: Clustering The Need for High Availability Another difficult real-world problem that can be solved via horizontally scaled clustering is the high availability (HA) issue. The challenge here is avoiding situations in which server software/hardware crashes and becomes unavailable. In a regular system, all requests being processed by the server are lost, and all users must wait until the server restarts properly before starting their work from the beginning. For example, if the users are online shoppers in a Web store, they will lose the contents of their shopping carts and any data that they may have entered during the checkout process when the server crashed. This is clearly an unacceptable set of consequences for serious real-world applications. What is desired is a system capable of continuing to handle incoming requests, making a single server crash completely transparent to the end user. The crash and recovery of any individual hardware system should not affect the user experience with the hosted application. Systems with the capability to survive server crashes typically exhibit very high uptime or availability. These systems are called high-availability (HA) systems. Tomcat 6 clusters can be used to implement an HA solution. In this scenario, the following occurs: 1. A request that is destined for the crashed server is redirected to another functioning server in the cluster. 2. The original incoming request is processed by the functioning server. 3. The Tomcat server that failed is logically removed from the cluster, so no further requests will be forwarded to it. 4. When and if the crashed Tomcat server recovers, it is logically added back into the cluster, and once again used to handle incoming requests. The key to enabling this scenario is to realize that any state information maintained by the application in the crashed server (typically, carried in the session) must be somehow made available to the functioning server. Tomcat 6 provides a workable solution to both the scalability and the HA problem. As such, Tomcat 6 has made major inroads in establishing itself as a serious and robust contender for enterprise-level production deployment. To better understand how Tomcat 6 achieves scalability and HA, a few words on some basic clustering concepts are appropriate. Clustering Basics Several basic system design patterns are found in clustered systems (a specific applied instance of the general-distributed computing problem). This section briefly describes two. The preceding discussion in this chapter and Chapter 11 cover a third: the load-balancing frontend pattern. Master-Backup Topological Pattern Figure 17-2 illustrates the master-backup topological pattern. This pattern refers to the way machines are configured and connected to achieve high availability. In this pattern, two (or more) machines are

For reliable and cheap web hosting services please check javaweb hosting website.

Chapter 17: Clustering Clustering Benefits Clustering in Tomcat

Tuesday, November 3rd, 2009

Clustering The Tomcat server has grown up, from

Monday, November 2nd, 2009

Chapter 16: Monitoring and Managing Tomcat with JMX

Sunday, November 1st, 2009

Chapter 16: Monitoring and Managing Tomcat with JMX

Sunday, November 1st, 2009