Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Cliente: ClientWrite
L’evento Client:ClientWrite
si verifica quando Aurora PostgreSQL è in attesa di scrivere dati sul client.
Versioni del motore supportate
Queste informazioni relative all'evento di attesa sono supportate per Aurora PostgreSQL versione 10 e successive.
Context
Il processo client deve ricevere i dati da un cluster database Aurora PostgreSQL prima di poter inviare più dati. Il tempo in cui il cluster attende prima inviare altri dati al client è un evento Client:ClientWrite
.
Il throughput di rete ridotto tra il cluster Aurora PostgreSQL DB e il client può causare questo evento. Anche la pressione della CPU e la saturazione della rete sul client possono causare questo evento. Pressione CPU è quando la CPU è completamente utilizzata e ci sono attività in attesa del tempo della CPU. Saturazione rete è quando la rete tra il database e il client trasporta più dati di quelli che è in grado di gestire.
Probabili cause di aumento delle attese
Le cause comuni della comparsa dell'evento Client:ClientWrite
che appare nelle prime attese includono:
- Maggiore latenza di rete
-
Potrebbe esserci una maggiore latenza di rete tra il cluster Aurora PostgreSQL DB e il client. Una maggiore latenza di rete aumenta il tempo necessario per la ricezione dei dati dal client.
- Aumento del carico sul client
-
Potrebbe esserci una pressione della CPU o una saturazione della rete sul client. Un aumento del carico sul client ritarda la ricezione dei dati dal cluster Aurora PostgreSQL DB.
- Ampio volume di dati inviati al client
-
Il cluster Aurora PostgreSQL DB potrebbe inviare una grande quantità di dati al client. Un client potrebbe non essere in grado di ricevere i dati con la stessa rapidità dell'invio del cluster. Attività come una copia di una tabella di grandi dimensioni possono comportare un aumento degli eventi
Client:ClientWrite
.
Azioni
Consigliamo azioni diverse a seconda delle cause dell'evento di attesa.
Argomenti
Posizionare i client nella stessa area di disponibilità e subnet VPC del cluster
Per ridurre la latenza di rete e aumentare il throughput di rete, posizionare i client nella stessa subnet di Availability Zone e Virtual Private Cloud (VPC) del cluster Aurora PostgreSQL DB.
Utilizza istanze di generazione corrente
In alcuni casi, potresti non utilizzare una classe di istanza DB che supporta i frame jumbo. Se stai eseguendo l'applicazione su Amazon EC2, considera l'utilizzo di un'istanza di generazione corrente per il client. Inoltre, configura l'unità di trasmissione massima (MTU) sul sistema operativo client. Questa tecnica potrebbe ridurre il numero di round trip di rete e aumentare il throughput di rete. Per ulteriori informazioni, consulta Jumbo frames (9001 MTU) nella Amazon EC2 User Guide.
Per informazioni sulle classi di istanza database, consulta Classi di istanze DB Amazon Aurora. Per determinare la classe di istanza DB equivalente a un tipo di istanza Amazon EC2, posizionare db.
prima del nome del tipo di istanza Amazon EC2. Ad esempio, l'istanza Amazon EC2 r5.8xlarge
è equivalente alla classe di istanza DB db.r5.8xlarge
.
Ridurre la quantità di dati inviati al client
Quando possibile, regolare l'applicazione per ridurre la quantità di dati che il cluster Aurora PostgreSQL DB invia al client. Effettuare tali regolazioni allevia la contesa della CPU e della rete sul client.
Ridimensionare il client
Utilizzando Amazon CloudWatch o altri parametri relativi all'host, stabilisci se il tuo client è attualmente limitato dalla CPU o dalla larghezza di banda della rete o da entrambi. Se il client è vincolato, ridimensionare il client di conseguenza.