Bilanciare il carico tra i server
Scopra come distribuire il traffico per mantenere i servizi reattivi.
Bilanciare il carico tra i server è una lezione Cloud & IT Cert Prep gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cloud & IT Cert Prep, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.
Che cos'è il bilanciamento del carico
Il load balancing distribuisce il traffico in ingresso tra più server, così nessun singolo server viene sovraccaricato. Invece di rallentare un unico server molto occupato, più server condividono il lavoro, migliorando prestazioni e affidabilità. Un dispositivo o servizio chiamato load balancer si trova davanti ai server e distribuisce le richieste tra loro, facendo apparire il pool di server come un unico servizio veloce.
Perché bilanciare il carico
Il bilanciamento del carico offre due grandi vantaggi: scalabilità e disponibilità. Aggiungere altri server dietro il bilanciatore aumenta la capacità di gestire la crescita; se un server si guasta, il bilanciatore smette semplicemente di inviargli traffico, così gli utenti continuano a ricevere il servizio. In questo modo, un singolo server fragile diventa un pool resiliente ed espandibile.
Il ruolo del bilanciatore del carico
Un bilanciatore del carico riceve le richieste dei client attraverso un unico virtual IP (VIP) front-end e inoltra ciascuna richiesta a uno dei server back-end. I client comunicano esclusivamente con il VIP e non sanno quanti server si trovino dietro di esso. Il bilanciatore può essere un'appliance hardware dedicata oppure un software, e spesso viene a sua volta reso ridondante per evitare che diventi un SPOF.
Algoritmi di distribuzione
I bilanciatori utilizzano algoritmi per scegliere un server. Round robin alterna i server nell'ordine. Least connections sceglie il server con il minor numero di sessioni attive. I metodi weighted favoriscono i server più potenti. La scelta dell'algoritmo corretto adatta il traffico alla capacità dei server, mantenendo il pool bilanciato ed efficiente.
Controlli di integrità
Un bilanciatore del carico esegue costantemente controlli di integrità, verificando ogni server per accertarsi che risponda. Se un server non supera il controllo, il bilanciatore smette di inviargli richieste finché non torna operativo. È questo che rende il bilanciamento del carico anche uno strumento di alta disponibilità: i server guasti vengono rimossi automaticamente dalla rotazione, così gli utenti non raggiungono mai un server non funzionante.
Persistenza della sessione
Alcune applicazioni richiedono che le richieste di un utente continuino a essere inviate allo stesso server, ad esempio per conservare nel server il carrello degli acquisti memorizzato in memoria. La persistenza della sessione (o "sticky sessions") associa un client a un server per tutta la durata della sessione. Senza questa funzione, un utente che passa da un server all'altro potrebbe perdere lo stato durante un'attività.
Layer 4 e Layer 7 a confronto
I bilanciatori operano a livelli diversi. Un bilanciatore di Layer 4 distribuisce il traffico in base all'indirizzo IP e alla porta TCP/UDP: è veloce, ma non conosce il contenuto. Un bilanciatore di Layer 7 legge i dati dell'applicazione, come gli URL HTTP, e consente un instradamento intelligente; ad esempio, può inviare /images a un pool e /api a un altro. Layer 7 è più potente, ma richiede più elaborazione per ogni richiesta.
Offloading SSL/TLS
I bilanciatori del carico eseguono spesso l'offloading SSL/TLS (terminazione): gestiscono la cifratura per conto dei client, decifrando il traffico affinché i server back-end non debbano farlo. In questo modo liberano CPU sui server per l'applicazione e centralizzano la gestione dei certificati sul bilanciatore. È un motivo comune per cui le organizzazioni collocano un bilanciatore Layer 7 avanzato davanti ai server web.
Bilanciatori ridondanti
Se tutto il traffico passa attraverso un unico bilanciatore del carico, quel bilanciatore diventa un single point of failure. Per questo i bilanciatori vengono distribuiti in coppie, in modalità active-active o active-passive, con failover tra i due. Lo strumento che garantisce la disponibilità deve essere a sua volta altamente disponibile. Una coppia di bilanciatori ridondanti mantiene resiliente l'intero front end.
Bilanciamento del carico nel cloud
I provider cloud offrono il bilanciamento del carico come servizio gestito, che si adatta automaticamente alla domanda. Insieme ai gruppi di server con auto-scaling, il cloud può aggiungere e rimuovere server dietro il bilanciatore in base al carico, per poi distribuire il traffico tra quelli attivi. Questo modello elastico è uno dei motivi principali per cui le applicazioni cloud gestiscono con efficacia traffico elevato e variabile.
Bilanciamento e HA insieme
Il bilanciamento del carico e la ridondanza lavorano insieme per garantire prestazioni e alta disponibilità. La ridondanza fornisce capacità e componenti di riserva; il bilanciamento del carico utilizza attivamente tale capacità, distribuendo il lavoro e aggirando i guasti in tempo reale. Insieme consentono a un servizio di rimanere veloce sotto carico elevato e operativo quando singoli server si guastano: sono un elemento fondamentale della progettazione resiliente.
Verifica rapida
Verifichi le Sue conoscenze sul bilanciamento del carico.
Riepilogo
Ha appreso il bilanciamento del carico. Punti chiave:
- Distribuisce il traffico tra i server per garantire scalabilità e disponibilità.
- I client raggiungono un virtual IP; il bilanciatore sceglie un server back-end.
- Gli algoritmi includono round robin, least connections e weighted.
- I controlli di integrità rimuovono i server guasti; la persistenza mantiene fisse le sessioni.
- Layer 4 e Layer 7; anche i bilanciatori vengono resi ridondanti.
Domande Frequenti
La lezione «Bilanciare il carico tra i server» è gratuita?
Sì — il testo completo di «Bilanciare il carico tra i server» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cloud & IT Cert Prep, passa a CoddyKit PRO. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.
Cosa imparerò in «Bilanciare il carico tra i server»?
Scopra come distribuire il traffico per mantenere i servizi reattivi. Eserciti Cloud & IT Cert Prep con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Cloud & IT Cert Prep?
Non è richiesta alcuna esperienza precedente. Cloud & IT Cert Prep su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.
Quanto tempo richiede la lezione «Bilanciare il carico tra i server»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Cloud & IT Cert Prep?
Sì. Ogni lezione Cloud & IT Cert Prep include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Progettare ridondanza e failover
- Bilanciare il carico tra i server
- Quality of Service per il traffico prioritario
- Riunire gli argomenti in vista dell'esame