Visão geral
O pacote retry fornece uma utilidade simples para envolver funções assíncronas com lógica de repetição automática usando backoff exponencial. É particularmente útil para requisições de rede que podem falhar temporariamente devido a problemas de conectividade. Ao envolver uma função com lógica de repetição, os desenvolvedores podem garantir robustez sem implementar mecanismos de repetição manualmente. O pacote é projetado para ser leve e integrar-se perfeitamente em aplicativos Dart. Ele suporta todas as principais plataformas, incluindo Android, iOS, Web, macOS, Windows e Linux.
Casos de uso
- Resiliência de solicitação de rede
- Repetições de chamada da API
- Interrupções temporárias de serviço
- Confiança em tarefas em segundo plano
- Repetições de operações de banco de dados
- Recuperação de dados em streaming
Principais recursos
- Estratégia de back-off exponencial
- Repetição automática em caso de falha
- Número configurável de tentativas
- Suporta async/await
- Leve e dependências mínimas
- Platform-agnostic
Indicado para
- aplicativos intensivos em rede
- Integrações de serviço em nuvem
- Aplicações com foco em offline
- Comunicação de microsserviços
- Sincronização de dados em tempo real
- Sistemas de alta disponibilidade
Considerações
- Pode aumentar a latência durante falhas
- Não adequado para operações idempotentes sem cuidado
- Requer configuração cuidadosa dos limites de repetição
- Pode levar ao esgotamento de recursos se mal utilizado
- Melhor combinado com tratamento de timeout
- Não deveria substituir o tratamento adequado de erros