Lógica de repetição configurável no SqlClient

Aplicável a: .NET Framework .NET .NET Standard

Baixar ADO.NET

Um aplicativo que se comunica com os elementos em execução na nuvem precisa ser suscetível às falhas transitórias que podem ocorrer nesse ambiente. Essas falhas geralmente são autocorretivas. Se a ação que disparou uma falha for repetida após um atraso razoável, provavelmente será bem-sucedida.

Observação

Esse recurso está disponível do Microsoft.Data.SqlClient versão 3.0.0 versão prévia 1 em diante.

Padrão de repetição

A tentativa de concluir uma operação apesar de erros transitórios, em vez de lançar uma exceção e deixar que o usuário decida a próxima ação, é uma decisão inteligente chamada de padrão de repetição. Para obter mais informações, confira Padrão de repetição.

Falhas transitórias

Você pode ter uma infraestrutura robusta e usar aplicativos amplamente conhecidos, implementados com as tecnologias mais recentes disponíveis a fim de reduzir o tempo de inatividade do serviço. No entanto, é impossível reduzir as falhas a zero. Os erros transitórios são falhas que às vezes ocorrem por motivos conhecidos e desaparecem após um breve período. Por exemplo, quando uma alteração de balanceamento de carga está em andamento no lado do servidor, ela pode fazer com que os serviços solicitados falhem ou atinjam o tempo limite por um breve período. Para obter mais informações, confira Falhas transitórias.

O que fazer e o que não fazer

Embora o uso de um padrão de repetição aprimore muito a resiliência de um aplicativo, também pode afetar negativamente o aplicativo, se for usado nas circunstâncias erradas. Antes de adicionar uma exceção à lista de falhas transitórias, pare por um momento e pondere: "ela será resolvida em breve?". Não se apresse. Se você não tiver uma boa resposta para a pergunta, estude os motivos. Para obter mais informações, confira Solucionar problemas de conectividade e outros erros com o Banco de Dados SQL do Azure e a Instância Gerenciada de SQL do Azure.

Nesta seção

Introdução à lógica de repetição configurável no SqlClient
Introduz uma seção diferente da lógica de repetição configurável.

Provedores internos de lógica de repetição no SqlClient
Demonstra como usar provedores de repetição predefinidos para aplicar a lógica de repetição ao banco de dados.

APIs principais da lógica de repetição configurável no SqlClient
Demonstra como usar as APIs principais a fim de implementar a lógica de repetição personalizada.

Arquivo de configuração da lógica de repetição configurável no SqlClient
Demonstra como especificar provedores de lógica de repetição padrão por meio de um arquivo de configuração.

Veja também