Visão geral
Polly Dart é uma implementação em Dart da popular biblioteca .NET Polly, oferecendo padrões robustos de resiliência para lidar com falhas transitórias em chamadas de rede e serviços. Ela fornece estratégias como Retry, Circuit Breaker, Timeout, Rate Limiter, Hedging e Fallback para melhorar a estabilidade da aplicação em condições de falha. Projetado para uso com clientes HTTP e serviços remotos, ajuda os desenvolvedores a construir aplicações tolerantes a falhas ao gerenciar falhas e tentativas com elegância. O pacote suporta todas as principais plataformas, incluindo Android, iOS, Web, macOS, Windows e Linux.
Casos de uso
- Gerenciando solicitações de rede não confiáveis
- Implementando lógica de repetição para chamadas de API
- Proteção contra sobrecarga do servidor
- Gerenciando respostas de fallback durante interrupções
- Construindo clientes resilientes de microsserviços
- Reduzindo falhas em cascata em sistemas distribuídos
Principais recursos
- Política de repetição com backoff exponencial
- Disjuntor para falha automática rápida
- Tratamento de tempo limite para operações de longa duração
- Limitação de taxa para evitar sobrecarga
- Hedging para melhorar o tempo de resposta
- Mecanismos de fallback para degradação graciosa
Indicado para
- Desenvolvedores criando aplicativos resilientes com Flutter
- Equipes usando clientes HTTP com pontos finais instáveis
- Aplicações que exigem tolerância a falhas
- Integração de backend com APIs instáveis
- Serviços em tempo real ou críticos para missões
Considerações
- Requer conhecimento sobre padrões de resiliência
- Pode aumentar a latência devido à lógica de repetição
- Necessita de ajuste adequado de configuração
- Não é um substituto para o tratamento de erros do backend
- Melhor usado com async/await ou fluxos de trabalho baseados em Future