In computing, load balancing is a technique (usually performed by load balancers) to spread work between many computers, processes, disks or other resources in order to get optimal resource utilization and decrease computing time.
A load balancer consists of a virtual server (also referred to as vserver or VIP) which, in turn, consists of an IP address and port. This virtual server is bound to a number of physical services running on the physical servers in a server farm. These physical services contain the physical server's IP address and port. A client sends a request to the virtual server, which in turn selects a physical server in the server farm and directs this request to the selected physical server. Load balancers are sometimes referred to as "directors"; while originally a marketing name chosen by various companies, it also reflects the load balancer's role in managing connections between clients and servers.
Different virtual servers can be configured for different sets of physical services, such as TCP and UDP services in general. Protocol- or application-specific virtual servers that may be supported include HTTP, FTP, SSL, SSL BRIDGE, SSL TCP, NNTP, SIP, and DNS.
The load balancing methods manage the selection of an appropriate physical server in a server farm.
Persistence can be configured on a virtual server; once a server is selected, subsequent requests from the client are directed to the same server. Persistence is sometimes necessary in applications where client state is maintained on the server, but the use of persistence can cause problems in failure and other situations. Further, persistence mechanisms can vary across load balancer implementations. A more common method of managing persistence is to store state information in a shared database, which can be accessed by all real servers, and to link this information to a client with a small token such as a cookie, which is sent in every client request.
Load balancers also perform server monitoring of services in a web server farm. In case of failure of a service, the load balancer continues to perform load balancing across the remaining services that are UP. In case of failure of all the servers bound to a virtual server, requests may be sent to a backup virtual server (if configured) or optionally redirected to a configured URL. For example, a page on a local or remote server which provides information on the site maintenance or outage.
Among the server types that may be load balanced are:
In Global Server Load Balancing (GSLB) the load balancer distributes load to a geographically distributed set of server farms based on health, server load or proximity.
Alternative methods include use of layer 4 routers, and for Linux, the Linux Virtual Server, which is an advanced open source load balancing solution for network services. Network Load Balancing Services is a Microsoft proprietary clustering and load balancing implementation.
Many sites are turning to the multi-homed scenario; having multiple connections to the Internet via multiple providers to provide a reliable and high throughput service. Multi-homed networks are increasing in popularity because they provide networks with better reliability and performance to the end-user. Better reliability results from the fact that the network is protected in case one of the Internet links or access routers fails. Performance increases due to the fact that the network's bandwidth to the Internet is the sum of the different pipes available through the different access links.
For the end-user (as opposed to ISPs, public hosts or other telco infrastructure), load balancing can be used to provide resilience or redundant backup in the case of failure of one part of WAN access. For example, a company with an ADSL line might have a secondary ADSL line, or any other kind of Internet feed. Internet traffic may be evenly distributed across both connections, giving more total net bandwidth, or traffic policies may determine specific types of data use a specific connection. Where one connection fails, all traffic can automatically route via the other connection.
Lastverteilung | Balance de carga | Répartition de charge | Równoważenie obciążenia | Balanceamento de carga
This article is licensed under the GNU Free Documentation License.
It uses material from the
"Load balancing (computing)".
Home Page • arts • business • computers • games • health • hospitals • home • kids & teens • news • physicians • recreation• reference • regional • science • shopping • society • sports • world