Partager via


RetryPolicy Classe

public class RetryPolicy implements RetryPolicyFactory

Classe abstraite qui représente une stratégie de nouvelle tentative.

Récapitulatif du champ

Modificateur et type Champ et description
final int DEFAULT_CLIENT_BACKOFF

Représente l’intervalle de backoff client par défaut, en millisecondes.

final int DEFAULT_CLIENT_RETRY_COUNT

Représente le nombre de nouvelles tentatives client par défaut.

final int DEFAULT_MAX_BACKOFF

Représente l’intervalle de backoff maximal par défaut, en millisecondes.

final int DEFAULT_MIN_BACKOFF

Représente l’intervalle de backoff minimal par défaut, en millisecondes.

int deltaBackoffIntervalInMs

Représente l’intervalle de backoff réalisé, en millisecondes.

Date lastPrimaryAttempt

Représente l’heure de la dernière tentative de demande à l’emplacement principal.

Date lastSecondaryAttempt

Représente l’heure de la dernière tentative de demande à l’emplacement secondaire.

int maximumAttempts

Représente le nombre maximal de nouvelles tentatives que la stratégie de nouvelle tentative doit tenter.

Récapitulatif du constructeur

Constructeur Description
RetryPolicy()

Crée une instance de la classe.

RetryPolicy(final int deltaBackoff, final int maxAttempts)

Crée une instance de la classe à l’aide de la sauvegarde delta et des tentatives de nouvelles tentatives maximales spécifiées.

Résumé de la méthode

Modificateur et type Méthode et description
abstract RetryInfo evaluate(RetryContext retryContext, OperationContext operationContext)

Détermine si l’opération doit être retentée et spécifie l’intervalle jusqu’à la nouvelle tentative suivante.

boolean evaluateLastAttemptAndSecondaryNotFound(RetryContext retryContext)

Détermine l’heure de la dernière tentative d’accès à un emplacement de stockage et retourne une qui spécifie si une demande envoyée à l’emplacement secondaire a échoué avec 404.

RetryInfo evaluateRetryInfo(final RetryContext retryContext, final boolean secondaryNotFound, final long retryInterval)

Détermine l’objet RetryInfo qui indique si la nouvelle tentative suivante se produira à l’emplacement principal ou secondaire, et spécifie le mode d’emplacement.

Membres hérités

Détails du champ

DEFAULT_CLIENT_BACKOFF

public static final int DEFAULT_CLIENT_BACKOFF= 1000 * 30

Représente l’intervalle de backoff client par défaut, en millisecondes.

DEFAULT_CLIENT_RETRY_COUNT

public static final int DEFAULT_CLIENT_RETRY_COUNT= 3

Représente le nombre de nouvelles tentatives client par défaut.

DEFAULT_MAX_BACKOFF

public static final int DEFAULT_MAX_BACKOFF= 1000 * 90

Représente l’intervalle de backoff maximal par défaut, en millisecondes.

DEFAULT_MIN_BACKOFF

public static final int DEFAULT_MIN_BACKOFF= 1000 * 3

Représente l’intervalle de backoff minimal par défaut, en millisecondes.

deltaBackoffIntervalInMs

protected int deltaBackoffIntervalInMs

Représente l’intervalle de backoff réalisé, en millisecondes.

lastPrimaryAttempt

protected Date lastPrimaryAttempt= null

Représente l’heure de la dernière tentative de demande à l’emplacement principal.

lastSecondaryAttempt

protected Date lastSecondaryAttempt= null

Représente l’heure de la dernière tentative de demande à l’emplacement secondaire.

maximumAttempts

protected int maximumAttempts

Représente le nombre maximal de nouvelles tentatives que la stratégie de nouvelle tentative doit tenter.

Détails du constructeur

RetryPolicy

public RetryPolicy()

Crée une instance de la classe.

RetryPolicy

public RetryPolicy(final int deltaBackoff, final int maxAttempts)

Crée une instance de la classe à l’aide de la sauvegarde delta et des tentatives de nouvelles tentatives maximales spécifiées.

Parameters:

deltaBackoff - Intervalle d’interruption, en millisecondes, entre les nouvelles tentatives.
maxAttempts - Nombre maximal de nouvelles tentatives.

Détails de la méthode

evaluate

public abstract RetryInfo evaluate(RetryContext retryContext, OperationContext operationContext)

Détermine si l’opération doit être retentée et spécifie l’intervalle jusqu’à la nouvelle tentative suivante.

Parameters:

retryContext - Objet RetryContext qui indique le nombre de nouvelles tentatives, les résultats de la dernière requête, si la nouvelle tentative suivante doit se produire à l’emplacement principal ou secondaire, et spécifie le mode d’emplacement.
operationContext - Objet OperationContext de suivi de l'opération en cours.

Returns:

Objet RetryInfo qui indique si la nouvelle tentative suivante se produira à l’emplacement principal ou secondaire et spécifie le mode d’emplacement. Si null, aucune nouvelle tentative n'a lieu.

evaluateLastAttemptAndSecondaryNotFound

protected boolean evaluateLastAttemptAndSecondaryNotFound(RetryContext retryContext)

Détermine l’heure de la dernière tentative d’accès à un emplacement de stockage et retourne une qui spécifie si une demande envoyée à l’emplacement secondaire a échoué avec 404.

Parameters:

retryContext - Objet RetryContext qui indique le nombre de nouvelles tentatives, les résultats de la dernière requête, si la nouvelle tentative suivante doit se produire à l’emplacement principal ou secondaire, et spécifie le mode d’emplacement.

Returns:

true si une requête envoyée à l’emplacement secondaire échoue avec 404 (introuvable). Sinon, false.

evaluateRetryInfo

protected RetryInfo evaluateRetryInfo(final RetryContext retryContext, final boolean secondaryNotFound, final long retryInterval)

Détermine l’objet RetryInfo qui indique si la nouvelle tentative suivante se produira à l’emplacement principal ou secondaire, et spécifie le mode d’emplacement.

Parameters:

retryContext - Objet RetryContext qui indique le nombre de nouvelles tentatives, les résultats de la dernière requête, si la nouvelle tentative suivante doit se produire à l’emplacement principal ou secondaire, et spécifie le mode d’emplacement.
secondaryNotFound - boolean indiquant si une requête envoyée à l’emplacement secondaire a échoué avec 404 (introuvable)
retryInterval - Intervalle de backoff.

Returns:

Référence à l’objet RetryInfo qui indique si la nouvelle tentative suivante se produira à l’emplacement principal ou secondaire et spécifie le mode d’emplacement.

S’applique à