Questo documento del framework di architettura di Google Cloud fornisce suggerimenti per aiutarti a ottimizzare le prestazioni delle tue risorse di rete e delle API in Google Cloud.
Network Service Tiers
Network Service Tiers ti consente di ottimizzare costi e prestazioni di rete carichi di lavoro con scale out impegnativi. Puoi scegliere tra i seguenti livelli:
- Il livello Premium utilizza la struttura backbone globale altamente affidabile di Google per aiutarti a ottenere una perdita di pacchetti e una latenza minime. Il traffico entra ed esce dalla rete Google in un punto di presenza perimetrale (PoP) globale vicino all'utente finale. Ti consigliamo di utilizzare il livello Premium come livello predefinito per ottenere prestazioni ottimali. Il livello Premium supporta sia le regioni che le globali indirizzi IP esterni per VM e bilanciatori del carico.
- Il livello Standard è disponibile solo per le risorse che utilizzano un'area geografica e indirizzi IP esterni. Il traffico entra ed esce dalla rete Google a un PoP perimetrale più vicino alla località Google Cloud in cui per l'esecuzione dei carichi di lavoro. I prezzi del livello Standard sono inferiori a quelli del livello Premium. Il livello Standard è adatto al traffico non sensibile alla perdita di pacchetti e che non prevede requisiti di bassa latenza.
Puoi visualizzare la latenza di rete per il livello Standard e Premium per ogni regione cloud del Dashboard delle prestazioni di Network Intelligence Center.
Frame jumbo
Le reti Virtual Private Cloud (VPC) hanno un'unità massima di trasmissione (MTU) predefinita di 1460 byte. Tuttavia, puoi configurare le reti VPC in modo da supportare un MTU fino a 8896
(frame jumbo).
Con un MTU più elevato, la rete ha bisogno di meno pacchetti per inviare la stessa quantità di dati, riducendo così la larghezza di banda utilizzata dalle intestazioni TCP/IP. Ciò comporta una maggiore larghezza di banda effettiva per la rete.
Per ulteriori informazioni sull'MTU intra-VPC e sull'MTU massima di altre connessioni, consulta la pagina Unità massima di trasmissione nella documentazione VPC.
Prestazioni della VM
Le VM di Compute Engine hanno una larghezza di banda in uscita massima che dipende in parte tipo di macchina. Un aspetto della scelta di un tipo di macchina appropriato è considerare quanto traffico prevedi che la VM generi.
La pagina Larghezza di banda di rete contiene una una discussione e una tabella delle larghezze di banda della rete per i tipi di macchine di Compute Engine.
Se i requisiti di larghezza di banda inter-VM sono molto elevati, valuta la possibilità di utilizzare VM che supportano la networking Tier_1.
Cloud Load Balancing
Questa sezione fornisce le best practice per aiutarti a ottimizzare il rendimento delle tue istanze Cloud Load Balancing.
Esegui il deployment delle applicazioni nelle vicinanze degli utenti
Esegui il provisioning dei backend dell'applicazione vicino alla località in cui prevedi che l'utente per raggiungere il bilanciatore del carico. Più sono vicini gli utenti o il cliente ai server dei carichi di lavoro, minore è la latenza di rete gli utenti e il carico di lavoro. Per ridurre al minimo la latenza per i client in parti diverse del potresti dover eseguire il deployment dei backend in più regioni. Per ulteriori informazioni, consulta Best practice per la scelta delle regioni Compute Engine.
Scegli un tipo di bilanciatore del carico appropriato
Il tipo di bilanciatore del carico che scegli per la tua applicazione può determinare la latenza che gli utenti si trovano ad affrontare. Per informazioni su come misurare e ottimizzare la latenza delle applicazioni per diversi tipi di bilanciatori del carico, consulta Ottimizzazione della latenza delle applicazioni con il bilanciamento del carico.
Abilita memorizzazione nella cache
Per accelerare la pubblicazione di contenuti, abilita la memorizzazione nella cache Cloud CDN come parte della configurazione predefinita del bilanciatore del carico HTTP esterno. Assicurati che che i server di backend configurato inviare le intestazioni delle risposte necessarie affinché le risposte statiche vengano memorizzati nella cache.
Utilizza HTTP quando HTTPS non è necessario
Google cripta automaticamente il traffico tra i bilanciatori del carico proxy e i backend a livello di pacchetto. La crittografia a livello di pacchetto rende la crittografia di livello 7 HTTPS tra il bilanciatore del carico e i backend ridondanti per la maggior parte degli scopi. Valuta la possibilità di utilizzare HTTP anziché HTTPS o HTTP/2 per il traffico tra il bilanciatore del carico e i tuoi backend. Utilizzando HTTP, puoi anche ridurre l'utilizzo della CPU delle VM di backend. Tuttavia, quando il backend è un endpoint di rete internet, (NEG), utilizzare HTTPS o HTTP/2 per il traffico tra il bilanciatore del carico e di un backend cloud. In questo modo, il tuo traffico sarà protetto sulla rete internet pubblica. Per un rendimento ottimale, ti consigliamo di eseguire il benchmarking dei pattern di traffico della tua applicazione.
Network Intelligence Center
Google Cloud Centro Network Intelligence Center offre una visione completa delle prestazioni di Google Cloud in tutte le regioni. Network Intelligence Center ti aiuta a determinare se i problemi di latenza sono causati da problemi nel progetto o nella rete. Puoi utilizzare queste informazioni anche per seleziona le regioni e le zone in cui eseguire il deployment dei carichi di lavoro per ottimizzare le prestazioni della rete.
Utilizza i seguenti strumenti forniti da Network Intelligence Center per monitorare e analizzare le prestazioni della rete per i tuoi carichi di lavoro in Google Cloud:
Performance Dashboard mostra la latenza tra le regioni Google Cloud e tra singole regioni e località su internet. La dashboard sul rendimento può aiutarti a determinare dove posizionare i carichi di lavoro per ottenere la latenza migliore e a capire quando un problema dell'applicazione potrebbe essere dovuto a problemi di rete sottostanti.
Topologia di rete mostra una vista delle reti Virtual Private Cloud (VPC), la connettività ibrida le reti on-premise e la connettività ai servizi gestiti da Google. Network Topology fornisce metriche operative in tempo reale che puoi utilizzare per analizzare e comprendere le prestazioni della rete e identificare modelli di traffico insoliti.
Network Analyzer è uno strumento di monitoraggio e diagnostica della configurazione automatica. Verifica Configurazioni di rete VPC per regole firewall, route di configurazione e la connettività per servizi e applicazioni. Ti aiuta a identificare gli errori di rete e fornisce analisi della causa principale e consigli. Network Analyzer fornisce informazioni con priorità per aiutarti a analizzare i problemi di configurazione di rete, ad esempio l'utilizzo elevato degli indirizzi IP in una subnet.
API Gateway e Apigee
Questa sezione fornisce consigli per aiutarti a ottimizzare il rendimento le API di cui esegui il deployment in Google Cloud Gateway API e Apigee.
API Gateway ti consente di creare e gestire le API per i backend serverless di Google Cloud, tra cui le funzioni Cloud Run, Cloud Run e App Engine. Questi servizi sono gestiti e si adattano automaticamente. Ma poiché le applicazioni di cui è stato eseguito il deployment su questa scala di servizi, potresti dover aumentare quote e limiti di frequenza per API Gateway.
Apigee fornisce le seguenti dashboard di analisi per aiutarti a monitorare il rendimento delle API gestite:
- Dashboard delle prestazioni del proxy API: Monitora i pattern di traffico del proxy API e i tempi di elaborazione.
- Dashboard sul rendimento del target: Visualizza i pattern di traffico e le metriche delle prestazioni per il backend del proxy API target.
- Dashboard delle prestazioni della cache: Monitorare le metriche delle prestazioni della cache Apigee, ad esempio la media di hit della cache e il tempo medio nella cache.
Se utilizzi Apigee Integration, considera limiti di configurazione del sistema quando crei e gestisci le integrazioni.
Passaggi successivi
Consulta le best practice per ottimizzare il rendimento delle risorse di calcolo, archiviazione, database e analisi:
- Ottimizza le prestazioni di calcolo.
- Ottimizzare le prestazioni dello spazio di archiviazione.
- Ottimizza le prestazioni del database.
- Ottimizzare il rendimento dei dati.