Hardware vs. Software Load Balancing Options


In this section you will look at the differences between Hardware load balancing solutions and software load balancing solutions. Understanding the strengths and limitations of each is crucial in deciding your network and system architecture.

ColdFusion MX 7 Load Balancing and Software-Based Load Balancing

In most software-based load-balancing methodologies, a service runs on each machine in a cluster. A machine designated as the primary cluster server distributes load to the other servers in the cluster. Should one server go down, the other machines in the cluster are notified by communication among the servers' cluster services, and the other machines act to absorb the extra load. One limitation of this approach is that it requires your Web servers to act as their own clustering agents.

ColdFusion MX 7 Enterprise Edition now uses integrated JRun clustering technology to provide load balancing and failover services. You can build and manage clusters right from the ColdFusion MX 7 Administrator. It can detect failed servers and busy applications, and provide redirection from these servers to other available servers. ColdFusion MX 7 Load Balancing uses HTTP redirection to balance load across a cluster as well as provide failover (see Figure 3.8). ColdFusion MX 7 Load Balancing runs on Windows, Solaris, and Linux platforms.

Figure 3.8. The Web Server Connector balances the load across the JRun servers in the cluster.


With ColdFusion MX 7 Load Balancing:

  • Application and server load management for ColdFusion MX 7 applications is provided. Server failover is also provided, whereby requests to failed servers are redirected to other servers in the cluster.

  • Session state management can be implemented so that users stay on the same server for the duration of their session.

  • Application servers can be monitored and restarted if they fail.

  • All servers in the cluster work together to manage HTTP requests, eliminating a point of failure for the system.

  • Centralized configuration services for all nodes in the cluster are provided.

See Table 3.2 for the advantages and disadvantages of using ColdFusion MX 7 Load Balancing software-based load balancing.

Table 3.2. ColdFusion MX 7 Load Balancing Advantages and Disadvantages

ADVANTAGES

DISADVANTAGES

Tightly integrated with ColdFusion MX 7 and very easy to set up

Negates full proportional distribution of load

Provides for failover and content awareness

No intermediary between servers and load

Can perform session-aware clustering

Does not provide for network address translation (NAT) for security

Can work with RRDNS as a two-layer approach

 

Included with ColdFusion MX 7 Enterprise

Inexpensive


Dedicated Load-Balancing Hardware

Hardware load balancers come in two basic flavors:

  • Server-based. This is accomplished by server-class PCs with specialized load-balancing software. The most widely used load balancers on the market today are Cisco's LocalDirector and F5's BigIP series.

  • Content-switch-based. Load balancers such as Cisco's CSS series combine the efficiency of a routing switch with load-balancing software that acts as an intelligent switching device.

Using dedicated load-balancing hardware is the most sophisticated way and, for large clusters, the best way to balance load across a cluster. Hardware-based load balancers sit in front of the Web servers and route all requests to them. Requests come in to a single IP address for your domain. The load-balancing hardware answers the request and mediates with individual Web servers to provide a response that appears to have originated from your domain's single public IP address. This form of distribution relies on complex algorithms to determine which Web server is "most available" at the time the request is presented. Usually this determination is made by a server polling for HTTP response time and, optionally, by the use of agents residing on the Web servers that make up your cluster. The agents report to the load-balancing hardware various aspects of your system's performance, such as CPU utilization, process utilization, and other vital machine statistics. Based on this data, the device routes the request to the most available server. Server failover is managed because a server fails polling tests and doesn't return any usable performance data via its agent.

Setting up load-balancing hardware is fairly complex. The arrangement is generally dual-homed (see the section "Tiered Application Architecture" in this chapter). Configuration requires fairly robust knowledge of TCP/IP networking principles, as well as the ability to absorb new concepts associated with the load-balancing hardware itself. For example, one downside to load-balancing hardware is the single-point-of-failure problem. To alleviate this issue, most manufacturers recommend that you purchase two boxes and set them up so that the second one can seamlessly take over for the first in case of failure. This backup box is known as a hot spare. You also need to address security and administration issues for your load-balancing hardware, just as you would for any other machine on your network.

NOTE

Only qualified routing technicians should set up hardware-based load balancing. Because these machines actually translate addresses, you can affect the operation of other routers on your network if you perform an incorrect installation or modification. In addition, network address translations (NATs) can affect the way your site functions after it is behind the load balancer.


Hardware-based load balancing provides an enhanced level of security because most of this hardware uses network address translation (NAT). This way, an administrator can use private, nonroutable IP numbers to address Web servers and can filter requests to those machines on specific ports at the NAT machine. For example, the NAT machine knows that 192.168.0.1 is a Web server behind the NAT. An instruction is given to the NAT machine that says a public address of 206.123.23.5 maps to 192.168.0.1 on port 80. Then, when a request comes to 206.123.23.5 on port 80, the NAT machine passes the request through to the back-end server. The user, however, never knows the true IP address of the server responding to the request, and a different server could be substituted for 192.168.0.1 by changing the mapping. Many hardware load-balancing solutions also offer sophisticated firewalls.

See Table 3.3 for the advantages and disadvantages of using a hardware load-balancing solution.

Table 3.3. Hardware-Based Load-Balancing Advantages and Disadvantages

ADVANTAGES

DISADVANTAGES

Provides true distribution of load based on server resources

Setup and administration require advanced networking knowledge

Acts as an added layer of security

Single point of failure; increased cost for purchasing the recommended hot spare

Provides for automatic failover to standby machines

Expensive

More reliable and better performing than software-based solutions

Expensive

Enables a single URL to access all machines behind load balance (more seamless to end user)

Expensive




Advanced Macromedia ColdFusion MX 7 Application Development
Advanced Macromedia ColdFusion MX 7 Application Development
ISBN: 0321292693
EAN: 2147483647
Year: 2006
Pages: 240
Authors: Ben Forta, et al

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net