Load balancing
Il load balancing, in italiano bilanciamento del carico, è una tecnica informatica che consiste nel distribuire il carico di uno specifico servizio, ad esempio la fornitura di un sito web, tra più server. Si aumentano in questo modo la scalabilità e l'affidabilità dell'architettura nel suo complesso.[1]
In pratica se arrivano 10 richieste per una pagina web su un cluster di 3 server, alle prime 3 risponderà il "primo" server, a 3 il "secondo" ed alle ultime 4 il "terzo".
La scalabilità deriva dal fatto che, nel caso sia necessario, si possono aggiungere nuovi server al cluster, mentre la maggiore affidabilità deriva dal fatto che la rottura di uno dei server non compromette la fornitura del servizio; non a caso i sistemi di load balancing in genere integrano dei sistemi di monitoraggio che escludono automaticamente dal cluster i server non raggiungibili ed evitano in questo modo di far fallire una porzione delle richieste degli utenti. Viene da sé che affinché l'architettura sia in high availability (HA) anche il sistema di load balancing deve essere costituito da un cluster in HA.
Per ottenere il load balancing in genere si interviene o a livello di applicazione o di rete della pila ISO/OSI. Nel primo caso si ha una maggiore flessibilità, non sempre utile, ma nel secondo caso si riescono a gestire moli di traffico molto maggiori.
Esistono diverse soluzioni sia hardware che software. Nell'ambito del software libero una buona soluzione è Linux Virtual Server.
Indice |
[modifica] Note
- ^ (EN) Load balancing. linuxvirtualserver.org. URL consultato il 14-5-2012.
[modifica] Voci correlate
[modifica] Altri progetti
Commons contiene file multimediali su Load balancing
[modifica] Collegamenti esterni
- (EN) The Linux Virtual Server Project - Linux Server Cluster for Load Balancing
- (EN) Apache Module mod_proxy_balancer
|
|