Pianifica la migrazione al bilanciatore del carico delle applicazioni esterno globale

Se sei un utente esistente del bilanciatore del carico delle applicazioni classico, assicurati di consultare questa pagina se prevedi di eseguire la migrazione al bilanciatore del carico delle applicazioni esterno globale o se stai pianificando un nuovo deployment con il bilanciatore del carico delle applicazioni esterno globale.

Differenze nelle funzionalità

Le seguenti funzionalità non sono supportate con il bilanciatore del carico delle applicazioni esterno globale. Sono disponibili solo con il bilanciatore del carico delle applicazioni classico:

Differenze del piano dati

La tabella seguente evidenzia le differenze nel piano dati tra l'Application Load Balancer classico e l'Application Load Balancer esterno globale. Queste differenze influiscono sul modo in cui i bilanciatori del carico rispondono ad alcuni eventi comuni.

Evento Risposta del bilanciatore del carico delle applicazioni classico Risposta del bilanciatore del carico delle applicazioni esterno globale
Codici di stato/errore
Tutti i backend sono in stato non integro Restituisce HTTP 502 Restituisce HTTP 503
La richiesta utilizza una crittografia SSL vietata Restituisce HTTP 502 Restituisce HTTP 503
Connessione upstream anticipata reimpostata dal backend Restituisce HTTP 502 Restituisce HTTP 503
Upgrade della connessione non riuscito (ad esempio, durante l'upgrade a WebSocket) Restituisce HTTP 400 Restituisce HTTP 403
L'intestazione è troppo grande Restituisce HTTP 413 Restituisce HTTP 431
Quote e limiti
Configurazione della mappa URL Esistono differenze significative nei limiti di configurazione della mappa URL tra i due bilanciatori del carico. Per maggiori dettagli, consulta la documentazione Quote: mappe URL.
Gestione dell'intestazione
La richiesta utilizza un metodo HTTP personalizzato senza corpo Aggiunge l'intestazione Transfer Encoding: Chunked alla richiesta inviata al backend Aggiunge l'intestazione Content-Length: 0 alla richiesta inviata al backend
Formato dell'intestazione X-Forwarded-For aggiunta alle richieste inviate al backend Utilizza il delimitatore ", " tra gli IP Utilizza il delimitatore "," tra gli IP (senza spazio dopo la virgola)
Conservazione della richiesta di intestazione L'intestazione viene mantenuta Tutte le chiavi di intestazione vengono trasformate in lettere minuscole
Intestazioni ripetute con lo stesso nome Consentito Le intestazioni ripetute possono essere combinate in un'unica intestazione, con i valori aggiunti in ordine e separati da virgole, come consentito dal documento RFC 7230.
(Solo HTTP/1.1) Nome dell'intestazione non valido (ad esempio, caratteri non supportati nell'intestazione) Consentito (per HTTP/1.1) Restituisce HTTP 502 (per HTTP/1.1)
(Solo HTTP/1.1) Ripetuto (ma uguale) Intestazione Content-Length nella richiesta Consentito (per HTTP/1.1) Restituisce HTTP 502 (per HTTP/1.1)
(Solo HTTP/1.1) Host multipli nell'intestazione Quando vengono aggiunti due o più host e il primo è valido, l'intestazione viene accettata. Quando vengono aggiunti due o più host e alcuni non sono validi, il bilanciatore del carico restituisce HTTP 502
(solo HTTP/1.1) Connection: Keep-Alive intestazione Aggiunge Keep-Alive header nelle richieste inviate al backend per impostazione predefinita Non aggiunge questa intestazione per impostazione predefinita
Gestione delle richieste
Barre all'indietro nella richiesta URL non modificato Converte in barra
Unisci barre duplicate nella richiesta Lascia barre non unite Unisce le barre
"#" nel percorso di richiesta Consentito Restituisce HTTP 400
(Solo HTTP/1.1) Caratteri non ammessi nel percorso di richiesta (ad esempio, "\\x7f\\x7f") Consentito (per HTTP/1.1) Restituisce HTTP 502 (per HTTP/1.1)
Distribuzione del traffico (configurazione della mappa URL)
La richiesta del client include un numero di porta Il numero di porta viene ignorato anche se hai configurato host con porte nella mappa URL. Viene preso in considerazione solo il nome host.
Ad esempio, le richieste per example.com:5000 vengono abbinate al servizio di backend per example.com.
Vengono presi in considerazione sia il nome host sia il numero di porta.
Ad esempio, le richieste per example.com:5000 vengono abbinate al servizio di backend per example.com:5000. Se non viene trovata una corrispondenza, viene utilizzato il servizio di backend predefinito.