Load Balancer è una soluzione software che consente di distribuire le richieste entranti dei client tra
diversi server. Quindi migliora le prestazioni dei server indirizzando le richieste delle sessioni TCP/IP a server
diversi nell'ambito di un gruppo; in tal modo le richieste vengono bilanciate tra tutti i server. Questo bilanciamento
del carico è trasparente agli utenti e alle altre applicazioni. Load Balancer è utile per applicazioni come i server di
posta elettronica, i server World Wide Web, le query distribuite su database paralleli e altre applicazioni TCP/IP.
Quando viene utilizzato con i server Web, Load Balancer consente di ottimizzare le prestazioni di un sito dal momento che
fornisce una soluzione potente, flessibile e scalabile per far fronte ai picchi di domanda. Se un sito Web non è in
grado di gestire tutti i visitatori nei momenti di picco di domanda, utilizzare Load Balancer per individuare
automaticamente il server migliore in grado di gestire le richieste entranti, migliorando la soddisfazione dei clienti
e i profitti dell'azienda.
Vantaggi dell'utilizzo di Load Balancer
Il numero di utenti e di reti che utilizzano Internet sta crescendo in misura esponenziale.
Questa crescita causa
problemi di scalabilità che possono limitare l'accesso degli utenti ai siti più popolari. Attualmente, gli amministratori dei siti utilizzano diversi metodi per ottimizzare gli accessi. Alcuni di questi metodi
consentono agli utenti di scegliere un server diverso a caso, se la scelta precedente non ha consentito l'accesso o in
caso di operazioni eccessivamente lente. Questo approccio è scomodo, noioso e inefficace. Un altro metodo è il
round-robin standard, che prevedere che sia il server dei nomi di dominio (DNS) a scegliere di volta in volta i server
che devono gestire le richieste.
Questo approccio è migliore, ma ancora inefficace, poiché inoltra il traffico alla cieca, senza prendere in
considerazione in alcun modo il carico di lavoro dei server. Inoltre, se un server subisce un guasto, il DNS continuerà
a inviargli richieste. La necessità di sviluppare una soluzione più potente ha prodotto Load Balancer. Questo prodotto offre numerosi benefici rispetto
alle soluzioni precedenti e alla concorrenza.
- Scalabilità: man mano che le richieste dei client aumentano, è possibile aggiungere dinamicamente altri server, consentendo quindi
di supportare decine di milioni di richieste al giorno attraverso decine o centinaia di server.
- Utilizzo efficace dell'apparecchiatura: il bilanciamento del carico consente di ottimizzare l'uso dell'hardware di ciascun gruppo di server, riducendo al
minimo le aree sensibili (hot-spot) che si vengono a creare frequentemente con il metodo round-robin standard.
- Semplice integrazione: Load Balancer utilizza i protocolli TCP/IP standard.
È possibile aggiungerlo alla rete esistente senza doverla modificare in alcun modo. È semplice da installare e
configurare.
- Basso carico Utilizzando il metodo di inoltro del livello MAC, il componente Dispatcher controlla soltanto il traffico entrante
dai client verso i server. Esso non gestisce il traffico uscente dai server verso i client. Ciò riduce significativamente
il suo impatto sull'applicazione, confrontato con gli altri approcci, e migliora le prestazioni della rete.
- Alta disponibilità: il componente Dispatcher
offre una elevata disponibilità grazie all'uso di una
macchina di backup sempre pronta a entrare in funzione per gestire il bilanciamento del carico in caso di guasto al
server principale. In caso di guasto a uno dei server, le richieste continueranno a essere soddisfatte dall'altro
server. Ciò elimina la possibilità che qualsiasi server diventi un "single point of failure" e rende il sito altamente
disponibile.
- Affinità client-server: la funzione di
affinità associa un indirizzo IP del client a un server di back-end, fornendo un maggior livello di efficienza diminuendo l'utilizzo di memoria e CPU se confrontata con un inoltro di connessioni tradizionale.
- Bilanciamento del carico di una rete privata:
è possibile impostare il Dispatcher e le macchine server TCP utilizzando una rete privata.
Questa configurazione può ridurre il conflitto sulla rete pubblica o esterna e può avere conseguenze sulle prestazioni.
- Ulteriori informazioni su come gestire i server mediante
Load Balancer.
Il componente Load Balancer bilancia il traffico tra i server tramite
un'efficace combinazione di bilanciamento del carico e software di gestione. Tutte le richieste client inviate alla macchina del Dispatcher sono indirizzate
al server considerato più adatto in base ai migliori pesi che vengono impostati dinamicamente. È
possibile utilizzare i valori predefiniti per questi pesi o attribuire loro dei valori
diversi durante il processo di configurazione.
Inoltre,
il Dispatche è in grado di rilevare un server che non funziona e di deviare il traffico a
lui indirizzato. Dispatcher
supporta HTTP, FTP, SSL, SMTP, NNTP, IMAP, POP3, Telnet, SIP e qualsiasi altra applicazione basata su
TCP.
Il componente Load Balancer è il fattore chiave che consente di gestire in
modo stabile ed efficiente una rete ampia e scalabile di server. Esso consente di
collegare molti server singoli in modo da farli sembrare un solo server virtuale. Quindi il sito sembrerà avere un unico
indirizzo IP. Dispatcher funziona indipendentemente da
un DNS (Domain Name Server); tutte le richieste vengono inviate all'indirizzo IP della
macchina .
Dispatcher offre considerevoli vantaggi nel bilanciamento del carico di traffico
sui server organizzati in cluster consentendo di gestire i siti in modo stabile ed
efficace.