In che modo è possibile evitare gli errori di timeout del gateway HTTP 504 su Amazon OpenSearch Service?

2 minuti di lettura
0

Sto cercando di risolvere un errore 504 relativo al timeout del gateway in servizio OpenSearch di Amazon. In che modo posso farlo?

Breve descrizione

Un bilanciatore del carico si trova di fronte a ciascun dominio di OpenSearch Service. Il sistema di bilanciamento del carico distribuisce il traffico in entrata ai nodi dati. Se le richieste di OpenSearch Service non vengono completate e restituiscono una conferma entro il periodo di timeout di inattività, il bilanciatore del carico chiude la connessione TCP. Di conseguenza, comparirà un errore di timeout del gateway HTTP 504. Un errore di timeout del gateway HTTP 504 non indica necessariamente un problema con il cluster, ma significa solo che la richiesta non può essere completata entro il periodo di timeout inattivo.

Gli errori di timeout del gateway si verificano in genere quando vengono inviate troppe richieste contemporaneamente o quando si inviano richieste complesse. In entrambi i casi, il risultato è lo stesso: OpenSearch Service non può completare la richiesta entro il periodo di timeout di inattività.

Risoluzione

Utilizzare uno o più dei seguenti metodi per risolvere gli errori di timeout del gateway HTTP 504:

  • Abilitare i log lenti per l'indice del servizio OpenSearch, quindi specificare le soglie di registrazione. Gli slow log possono aiutare a determinare se il completamento di una determinata query impiega molto tempo. In tal caso, regolare la query per risolvere l'errore 504. Per ulteriori informazioni, consulta Visualizzazione dei log di rallentamento del servizio OpenSearch.
  • Ridurre la quantità di dati che OpenSearch Service deve interrogare per le richieste. Ciò riduce il tempo necessario per il completamento delle richieste.
  • Passare a un tipo di istanza più grande. Per ulteriori informazioni, consulta Scelta dei tipi di istanza e test.
  • Configurare meccanismi di backoff esponenziale e di tentativi nell'applicazione in modo che le richieste di timeout vengano nuovamente inviate.
  • Utilizzare le richieste in blocco anziché le singole richieste. Ciò riduce il sovraccarico per richiesta per il cluster.

Informazioni correlate

In che modo è possibile prevenire gli errori HTTP 503 Servizio non disponibile in Amazon Elasticsearch Service?

Creazione e gestione di domini Amazon OpenSearch Service

AWS UFFICIALE
AWS UFFICIALEAggiornata 3 anni fa