Classe: Mongo::Retryable::RetryPolicy Private
- Herda:
-
Objeto
- Objeto
- Mongo::Retryable::RetryPolicy
- Definido em:
- lib/mongo/retryable/retry_policy.rb
Visão geral
Esta classe faz parte de uma API privada. Evite usar essa classe, se possível, pois ela pode ser removida ou alterada no futuro.
Encapsula a política de repetição para backpressure do cliente com backoff e jitter exponenciais.
Uma instância é criada por cliente e compartilhada entre todas as operações desse cliente.
Recolhimento do Resumo do atributo de instância
-
#max_retries ⇒ Integer
Somente leitura
privado
O número máximo de tentativas de sobrecarga.
Recolhimento do Resumo do método de instância
-
#backoff_delay(attempt, jitter: random) ➤ Flutuante
privado
Calcule o atraso de backoff para uma determinada tentativa de repetição.
-
#initialize(max_retries: Backpressure::DEFAULT_MAX_RETRIES) ⇒ RetryPolicy
construtor
privado
Crie uma nova política de novas tentativas.
-
#should_retry_overload?(tentativa, atraso, contexto: nil) ➤ true | false
privado
Determine se uma nova tentativa de sobrecarga deve ser tentada.
Detalhes do construtor
#initialize(max_retries: Backpressure::DEFAULT_MAX_RETRIES) ⇒ RetryPolicy
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Crie uma nova política de novas tentativas.
20 21 22 |
# arquivo 'lib/mongo/retryable/retry_policy.rb', linha 20 def inicializar(max_retry: Contrapressão::DEFAULT_MAX_RETRIES) @max_retries = max_retry end |
Detalhes do atributo da instância
#max_retry ➤ Inteiro (somente leitura)
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Retorna o número máximo de tentativas de sobrecarga.
14 15 16 |
# arquivo 'lib/mongo/retryable/retry_policy.rb', linha 14 def max_retry @max_retries end |
Detalhes do método de instância
#backoff_delay(attempt, jitter: random) ➤ Flutuante
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Calcule o atraso de backoff para uma determinada tentativa de repetição.
30 31 32 |
# arquivo 'lib/mongo/retryable/retry_policy.rb', linha 30 def backoff_delay(tentar, jitter: random) Contrapressão.backoff_delay(tentar, jitter: tique-taque) end |
#should_retry_overload?(tentativa, atraso, contexto: nil) ⇒ true | false
Este método faz parte de uma API privada. Evite usar esse método, se possível, pois ele pode ser removido ou alterado no futuro.
Determine se uma nova tentativa de sobrecarga deve ser tentada.
42 43 44 45 46 47 |
# arquivo 'lib/mongo/retryable/retry_policy.rb', linha 42 def should_retry_overload?(tentar, atrasar, contexto: nada) Método false se tentar > @max_retries Método false se excede_deadline?(atrasar, Contexto) true end |