Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Dica
Esse conteúdo é um trecho do eBook, arquitetura de microsserviços do .NET para aplicativos .NET em contêineres, disponível em do .NET Docs ou como um PDF para download gratuito que pode ser lido offline.
Seus aplicativos baseados em microsserviços e na nuvem devem aceitar as falhas parciais que irão inevitavelmente ocorrer. Você deve projetar seu aplicativo para ser resiliente a essas falhas parciais.
A resiliência é a capacidade de se recuperar de falhas e continuar funcionando. Não se trata de evitar falhas, mas de aceitar o fato de que as falhas ocorrerão e responder a elas de uma maneira que evite o tempo de inatividade ou a perda de dados. A meta de resiliência é retornar o aplicativo a um estado totalmente funcional após uma falha.
É desafiador o suficiente para projetar e implantar um aplicativo baseado em microsserviços. Mas você também precisa manter seu aplicativo em execução em um ambiente em que algum tipo de falha é certo. Portanto, seu aplicativo deve ser resiliente. Ele deve ser projetado para lidar com falhas parciais, como interrupções de rede ou nós ou VMs falhando na nuvem. Mesmo quando microsserviços (contêineres) são movidos para um nó diferente dentro de um cluster, isso pode causar falhas curtas e intermitentes no aplicativo.
Os muitos componentes individuais do aplicativo também devem incorporar recursos de monitoramento de saúde. Seguindo as diretrizes neste capítulo, você pode criar um aplicativo que pode funcionar sem problemas, apesar do tempo de inatividade transitório ou dos soluços normais que ocorrem em implantações complexas e baseadas em nuvem.
Importante
O eShopOnContainer estava usando a biblioteca Polly para implementar a resiliência usando Clientes Tipados até a versão 3.0.0. A partir da versão 3.0.0, a resiliência de chamadas HTTP é implementada usando uma malha Linkerd, que manipula novas tentativas de forma transparente e configurável dentro de um cluster do Kubernetes, sem precisar lidar com essas preocupações no código.
A biblioteca Polly ainda é usada para adicionar resiliência às conexões de banco de dados, especialmente ao iniciar os serviços.
Aviso
Todos os exemplos de código e imagens nesta seção eram válidos antes de usar o Linkerd e não são atualizados para refletir o código real atual. Portanto, eles fazem sentido no contexto desta seção.