Arquitetura Corporativa para Todos

Artigo / Post

Serviços resiliente : Eficiência com pouco código em .NET 8 e .NET9

Quanto maior as dependências remotas em seus serviços , maiores são as probabilidades de falhas. Essas solicitações podem eventualmente falhar devido a problemas de rede ou outros fatores de comunicação.

Se não forem tratadas adequadamente, podem impactar a disponibilidade dos serviços , inclusive podendo gerar um efeito cascata em diversos serviços.

Construir aplicativos resiliente é um requisito fundamental para o desenvolvimento de serviços / domínios distribuídos.

As chamadas remotas a outros serviços normalmente dependem do protocolo HTTP para fazer tais solicitações.

Várias estratégias para resiliência sobre o protocolo http podem ser usadas para reforçar este conceito em seus serviços :

  • 👉 Definir timeout nas solicitações
  • 👉 Definir políticas de tentativas em falhas temporárias
  • 👉 Definir políticas de Circuit-breaker
  • 👉 Definir caminhos alternativos
  • 👉 Combinações das alternativas acima

🚀 Com o .NET 8 foi lançado dois novos pacotes que permitem estratégias de resiliência customizadas ao pipeline HTTP:

  • ▶ Microsoft.Extensions.Http.Resilience
  • ▶ Microsoft.Extensions.Resilience

Foi feito um grande trabalho para atender aos mais diversos cenários e necessidades fornecendo 3 pontos de extensibilidade (IHttpClientBuilder) para um pipeline de resiliência:

💡 AddStandardResilienceHandler : pipeline padrão adequado para a maioria dos cenários.

💡 AddStandardHedgingHandler : pipeline de cobertura padrão , que oferece suporte a solicitações para vários endpoints.

💡 AddResilienceHandler : permite a personalização de estratégias de resiliência.

Falar de resiliência em .NET, não se pode deixar de mencionar a biblioteca Polly . A Microsoft ajudou a desenvolver a nova versão Polly v8, então pode-se esperar integrações mais robusta e performáticas sentido.

❓ Você já está utilizando ou conhecia estes pacotes ?  Os exemplos certamente vão deixar suas aplicações habilitadas para cenários de resiliência com pouco esforço de código , fácil manutenção e continuidade de evolução

https://learn.microsoft.com/pt-br/dotnet/core/resilience/http-resilience?tabs=dotnet-cli/

https://devblogs.microsoft.com/dotnet/building-resilient-cloud-services-with-dotnet-8/


Tenham um excelente dia! Eu sou Fernando Cerqueira e entrego estratégias digitais para os desafios do presente, com propostas de inovação para um futuro sustentável.

Compatilhe

0 0 votos
Avaliação Global
0 Comentários
Feedbacks embutidos
Ver todos os comentários
Categorias

Sobre o Autor

Picture of Fernando Cerqueira

Fernando Cerqueira

Eu sou Fernando Cerqueira e entrego estratégias digitais para os desafios do presente, com propostas de inovação para um futuro sustentável. Como arquiteto sênior, aproveito meus mais de 20 anos de experiência em arquitetura e desenvolvimento de software para projetar e implementar soluções baseadas em nuvem que ajudam os clientes a transformar seus negócios com tecnologia.

Outros Posts

Categorias

O que é preciso para ser um arquiteto corporativo?

O que é preciso para ser um arquiteto corporativo? Antes de continuar a leitura, um aviso : Já se perguntou o que está por trás (o famoso porquê) da adoção de ADR´S, C4-Models, designs patterns, Zachman, FEAF, DoDAF, MODAF e BIAN, TOGAF, CMMI e afins? 🔥 Arquitetura corporativa NÃO é

O “Efeito Gremlins” e os microsserviços

Introdução Todas as empresas desejam manter seus ativos de hardwares e softwares atualizados. No entanto, esbarram em custos significativos de atualizações de licenças, complexidade dos legados e ‘dívidas técnicas’ dos ativos de software. Com a adoção de microsserviços (pelos motivos corretos ou não), muitas empresas verificaram que os ativos de

Uso de IA nas Empresas

“Não podemos controlar os ventos, mas podemos sempre ajustar as velas” Esta é a frase (Costuma ser atribuído a muitas pessoas, como Confúcio e Dolly Parton, mas acredita-se que seja uma variação de um pensamento de Cora L. V. Hatch, proferido em uma palestra em 1859) que vem à mente

Disagree and Commit: A arte de inovar em ambientes divergentes.

Em 1997, Jeff Bezos introduziu o princípio ‘Disagree and Commit‘ na Amazon. Este princípio, que pode ser traduzido como ‘Discorde e Comprometa-se’, permitindo inovação rápida apesar das discordâncias internas. Este princípio também pode ser útil onde a inovação é frequentemente desafiada por restrições legais e normativas, como o setor financeiro,

Na alta performance não existe vaidade

Cesar Cielo, em seu livro 101% cunhou o titulo deste post. Liderança é um dos atributos de soft skills desejados no mundo corporativo e pode ser treinado e aperfeiçoado.  Uma das características deste atributo é que mesmo com treinamento a liderança não se sustenta pela imposição. Liderança se conquista no

"Não existe decisões técnicas , decisões de tecnologia devem ter um proposito que resolva um problema de negócio."

Fernando Cerqueira | Arquiteto Corporativo

Sua Reflexão

0
Adoraria saber sua opinião, comente.x