Configuração de nova tentativa de solicitação em nuvem

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 2 min. de leitura
  • Se uma solicitação for limitada por um provedor de nuvem durante a Descoberta, a Configuração de nova tentativa de solicitação de nuvem fornecerá um método personalizável para repetir solicitações. Padrões de descoberta e mapeamento de serviçosinclui uma configuração de nova tentativa para AWSe. Azure. Você pode personalizar a configuração incluída ou criar a sua própria.

    Os administradores de descoberta e de nuvem podem acessar a configuração de nova tentativa de solicitação em Tudo > Descoberta > Configuração de nova tentativa de solicitação em nuvem. Você pode criar uma configuração para cada provedor.

    Quando uma solicitação é limitada, a estrutura de novas tentativas usa a configuração de novas tentativas definida para que o provedor lide com novas tentativas antes de retornar a resposta final para as classes ApiCommand:
    • AwsApiComando
    • Comando AzureApi

    As configurações de nova tentativa são sincronizadas com MID Serverspor MID Serverpropriedade, mid.cloud.discovery.retry.configuration.

    Há as seguintes estratégias de nova tentativa:
    • Recuo exponencial
    • Recuo do cabeçalho de resposta
    • Backoff personalizado

    Recuo exponencial

    Para o seguinte exemplo de configuração:
    Configuração Valor
    Máximo de novas tentativas 3
    Códigos de resposta 429
    Atraso de base em ms 1000
    Atraso máximo em ms 10000
    Janela de atraso adicional em ms 1500
    A estratégia de nova tentativa de backoff exponencial funciona da seguinte forma:
    • primeira tentativa - o multiplicador de backoff é selecionado aleatoriamente entre 0 e 1. O valor máximo de atraso é de 400 ms (400 * 1).
    • segunda tentativa - o multiplicador de backoff é selecionado aleatoriamente entre 0 e 3. O valor máximo de atraso é de 1200 ms (400 * 3).
    • 3a nova tentativa - o multiplicador de backoff é selecionado aleatoriamente entre 0 e 7. O valor máximo de atraso é de 2800 ms (400 * 7).

    Em novas tentativas subsequentes, se o atraso exceder 10000 (o atraso máximo), 10000 será usado como atraso inicial.

    Quando o atraso inicial é gerado, o jitter é adicionado ao atraso. A janela de jitter é definida pelo Janela de atraso adicional em ms campo. O sistema seleciona um valor aleatório entre 0 e 1500 e o adiciona ao atraso inicial.

    Se o atraso inicial for 500, o atraso final (com jitter) pode ser um valor entre 500 e 2000 ms.

    Recuo do cabeçalho de resposta

    Para o seguinte exemplo de configuração:
    Configuração Valor
    Máximo de novas tentativas 3
    Códigos de resposta 429
    Cabeçalho de resposta Tentar novamente após
    Unidade de atraso do cabeçalho de resposta Segundos
    Janela de atraso adicional em ms 1500
    A estratégia de backoff do cabeçalho de resposta funciona da seguinte forma:
    • Busque o valor do cabeçalho Retry-Afterda resposta do servidor.
    • Converta o. Retry-Afterpara milissegundos multiplicando por 1000.

    Quando o atraso inicial é gerado, o jitter é adicionado ao atraso. A janela de jitter é definida pelo Janela de atraso adicional em ms campo. O sistema seleciona um valor aleatório entre 0 e 1500 e o adiciona ao atraso inicial.

    Se o atraso inicial for 2000, o atraso final (com jitter) pode ser um valor entre 2000 e 3500 ms.

    Backoff personalizado

    Com uma estratégia de nova tentativa de backoff personalizada, você define Máximo de novas tentativas e. Códigos de resposta e crie o seu próprio Inclusão de MID script que define como as solicitações são repetidas usando getDelay()função. Para obter mais informações, consulte Inclusões de script .