Comprendere la politica relativa ai nuovi tentativi con l'autista in Amazon QLDB - Database Amazon Quantum Ledger (Amazon) QLDB

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à.

Comprendere la politica relativa ai nuovi tentativi con l'autista in Amazon QLDB

Importante

Avviso di fine del supporto: i clienti esistenti potranno utilizzare Amazon QLDB fino alla fine del supporto il 31/07/2025. Per ulteriori dettagli, consulta Migrare un Amazon QLDB Ledger ad Amazon Aurora Postgre. SQL

Il QLDB driver Amazon utilizza una politica di nuovi tentativi per gestire le eccezioni transitorie riprovando in modo trasparente una transazione non riuscita. Queste eccezioni, come CapacityExceededException e, in genere si correggono automaticamente dopo un RateExceededException certo periodo di tempo. Se la transazione fallita con l'eccezione viene ritentata dopo un periodo di tempo adeguato, è probabile che abbia successo. Questo aiuta a migliorare la stabilità dell'applicazione che utilizzaQLDB.

Tipi di errori riutilizzabili

Il driver ritenta automaticamente una transazione se e solo se si verifica una delle seguenti eccezioni durante un'operazione all'interno di tale transazione:

  • CapacityExceededException— Restituito quando la richiesta supera la capacità di elaborazione del registro.

  • InvalidSessionException— Restituito quando una sessione non è più valida o se la sessione non esiste.

  • LimitExceededException— Restituito se viene superato un limite di risorse, ad esempio il numero di sessioni attive.

  • OccConflictException— Restituito quando una transazione non può essere scritta sul journal a causa di un errore nella fase di verifica di Optimistic Concurrency Control (). OCC

  • RateExceededException— Restituito quando la frequenza delle richieste supera il throughput consentito.

Criteri di riprova predefiniti

La politica sui nuovi tentativi consiste in una condizione di nuovo tentativo e in una strategia di backoff. La condizione di nuovo tentativo definisce quando una transazione deve essere ritentata, mentre la strategia di backoff definisce il tempo di attesa prima di riprovare la transazione.

Quando si crea un'istanza del driver, la politica di riprova predefinita prevede di riprovare fino a quattro volte e di utilizzare una strategia di backoff esponenziale. La strategia di backoff esponenziale utilizza un ritardo minimo di 10 millisecondi e un ritardo massimo di 5000 millisecondi, a parità di jitter. Se la transazione non può essere completata correttamente nell'ambito della politica relativa ai nuovi tentativi, ti consigliamo di provare la transazione in un altro momento.

Il concetto di backoff esponenziale consiste nell'utilizzare tempi di attesa progressivamente più lunghi tra un tentativo e l'altro per risposte di errore consecutive. Per ulteriori informazioni, consulta il post di AWS blog Exponential Backoff and Jitter.