Seu gateway APIM encaminha solicitações para um backend que retorna intermitentemente 500 ou 504. Você deve repetir as chamadas com falha até três vezes com um atraso de um segundo, mas apenas para esses dois códigos de status. Qual configuração de política você deve usar?
Escolha uma resposta
Toque em uma opção para verificar sua resposta.
Resposta correta: Envolver a chamada de backend com uma política de repetição: <retry count="3" interval="1" condition="@(context.Response.StatusCode == 500 || context.Response.StatusCode == 504)">`<forward-request />`</retry>..
Por que esta é a resposta
A política <retry é a solução correta porque permite especificar o número de tentativas (count), o intervalo entre elas (interval) e, crucialmente, uma condition para determinar quando a repetição deve ocorrer. Neste caso, a condição @(context.Response.StatusCode == 500 || context.Response.StatusCode == 504) garante que apenas falhas de servidor (500) ou timeout de gateway (504) acionem a repetição, conforme o requisito. A tag <forward-request / dentro da política indica que a operação a ser repetida é o encaminhamento da requisição para o backend. As outras opções estão incorretas porque: A política de repetição sem condição repetiria todas as falhas, o que não é o comportamento desejado. Usar set-variable e send-request com JavaScript seria uma abordagem excessivamente complexa e menos eficiente do que a política <retry nativa. Definir o tempo limite em forward-request não implementa um mecanismo de repetição; ele apenas define quanto tempo o APIM espera por uma resposta antes de falhar. O APIM não repete automaticamente solicitações com falha sem uma política de repetição explícita.
Passe no seu exame — sem a busca interminável por respostas
Obtenha todas as perguntas e explicações verificadas para este exame em um só lugar e economize horas de preparação. Mais de 1.000 certificações · Mais de 20 idiomas · Grátis para começar.
Passe no seu exame mais rápido → Não é necessário cartão