.NET Core 3.1 + Polly: Tratamento de Falhas, Chaos Engineering - exemplos de implementação
Recentemente (Janeiro/2020) realizei uma apresentação sobre a biblioteca Polly como alternativa para a construção de aplicações .NET resilientes:
- Um dos grandes benefícios do uso de Polly está justamente na obtenção de um tratamento de falhas mais efetivo e conciso, uma vez que ao definirmos Policies baseadas em patterns como Retry, Timeout e Circuit Breaker conseguimos evitar a codificação de extensos trechos de código (dispensando numerosos blocos try-catch e loops);
- Outra iniciativa extremamente interessante e útil do time responsável pelo projeto Polly é a biblioteca Simmy, voltada à simulação de situações de caos. A disciplina conhecida como Chaos Engineering é um tópico de grande importância na implementação de sistemas distribuídos e arquiteturas baseadas em Microsserviços, provendo técnicas e conceitos úteis para a obtenção de soluções resilientes.
Deixo aqui neste post os slides utilizados durante a palestra:
Assim como o link no GitHub dos projetos que apresentei:
.NET Core 3.1 + Console Application + Polly + JWT + HttpClient
.NET Core 3.1 + Console Application + Polly + JWT + Refit
ASP.NET Core 3.1 + Razor Pages + Polly + HttpClient
ASP.NET Core 3.1 + Razor Pages + Polly + Simmy + HttpClient
.NET Core 3.1 + Worker Service + Polly + Simmy + HttpClient
Já abordei também o uso de Polly em detalhes nos seguintes artigos:
Polly: resiliência e maior estabilidade em aplicações .NET
Aplicações .NET mais estáveis com Polly, Health Checks e Application Insights
ASP.NET Core 3.0 + Polly: simplificando o tratamento de falhas em projetos Web
.NET Core + Polly + JWT: tratando de forma resiliente a expiração de tokens
.NET Core + JWT + Polly + Refit: consumindo APIs seguras com simplicidade e resiliência
Implementações empregando Polly também foram tema de uma live do Canal .NET:
Aproveito este espaço para deixar aqui também um convite. Nos meses de Fevereiro e Março/2020 acontecerá o Azure Tech Nights, evento online e gratuito promovido pelo Canal .NET com foco em tecnologias e serviços que integram a nuvem Microsoft.
Para participar do primeiro dia de apresentações (11/02/2020, terça-feira às 21:00 - horário de Brasília) acesse este link e faça sua inscrição pelo Meetup, a transmissão será via YouTube e serão abordados temas/tecnologias como Microservices, Desenvolvimento Serverless, Azure Functions e Azure Web Apps + Linux.