Módulo: Mongo::Retryable::Backpressure Privado

Definido en:
lib/mongo/retryable/backpressure.rb

Overview

Este módulo es parte de una API privada. Deberías evitar usar este módulo si es posible, ya que puede ser removido o cambiado en el futuro.

Constantes y asistentes para la contrapresión del cliente (retroceso exponencial y fluctuación en los bucles de reintento).

Desde:

  • 2.1.0

Resumen de constantes colapsar

BASE_BACKOFF =

Esta constante es parte de una API privada. Deberías evitar usar esta constante si es posible, ya que podría ser retirada o cambiada en el futuro.

Retraso de reintento básico en segundos.

Desde:

  • 2.1.0

0.1
MAX_BACKOFF =

Esta constante es parte de una API privada. Deberías evitar usar esta constante si es posible, ya que podría ser retirada o cambiada en el futuro.

Retraso máximo de backoff en segundos.

Desde:

  • 2.1.0

10
DEFAULT_MAX_RETRIES =

Esta constante es parte de una API privada. Deberías evitar usar esta constante si es posible, ya que podría ser retirada o cambiada en el futuro.

Número máximo por defecto de reintentos para errores de sobrecarga.

Desde:

  • 2.1.0

2

Resumen del método de clase colapsar

Detalles del método de clase

.backoff_delay(attempt, jitter: rand) ⇒ Float

Este método es parte de una API privada. Se debe evitar el uso de este método si es posible, ya que podría eliminarse o modificarse en el futuro.

Calcula el retraso de reintento para un intento de reintento determinado.

Parámetros:

  • intento (Número entero)

    El número de intento de reintento (con índice 1).

  • jitters (Flotante) (por defecto: rand)

    Un número aleatorio con decimales en [0.0, 1.0). El valor por defecto es uno aleatorio. Puede inyectarse para pruebas deterministas.

Devuelve:

  • (Float)

    El retraso retroactivo en segundos.

Desde:

  • 2.1.0



26
27
28
# Archivo 'lib/mongo/retryable/backpressure.rb', línea 26

def sí mismo.retraso_de_respaldo(intento, oscilación: rand)
  jitters * [ MAX_BACKOFF, RETROCESO_BASE * (2**(intento - 1)) ].min
end