In the Internet business, the need to deal with heavy load is both enviable and problematic. A lot of traffic means a lot of customers but also can mean degraded or unavailable service. The bottleneck for a sophisticated server application is typically the processing of requests rather than their delivery. The most efficient way to increase the load-bearing capability of a service is to reduce the amount of time a request spends in the server.
Companies that offer services on the web cannot afford the bad press and loss of revenue associated with system downtime. Slow or intermittent service due to heavy traffic is much better than no service at all brought about by a critical hardware or software failure.
The TacoPleX system has two main functions:
High Availability: An increasing number of server clusters cannot afford any downtime. A highly available cluster can detect and respond to hardware and software failures with a minimum of service interruption.
Load Leveling: Clustering solutions are pointless if one machine ends up doing all the work. Maximum response speed is achieved by spreading the chores out among the workers. The goal of load leveling is to allocate resources to the end of minimizing system response time.
The inspiration for TacoPleX comes from other highly available load-leveling solutions:
Big IP: The good people at F5 Networks have developed a dedicated hardware device to handle system monitoring and traffic distribution. The system is fast, configurable, and expensive.
Radare: Radware has a similar line of dedicated hardware products that achieve much the same end as the Big IP system.
LVS Project: This Linux project aims at bringing load-leveling into the Linux kernel. Their approach provides a variety of leveling algorithms and delivery mechanisms. The system is designed for a single leveler front-end and provides availability via failover. Much of the TacoPleX code is a thinly disguised copy of the VS framework.
Foundry ServerIron: Foundry Networks offers a hardware/software solution based on switching technology. They claim big numbers and are less expensive than many competing products (e.g. BigIP).
The goal of TacoPleX is to duplicate the functionality of these products in a cheaper, better solution that can be quickly installed and is expandable over the life of a cluster.