Encaminhar tráfego no Serviço de Aplicativo
Por padrão, todas as solicitações do cliente para a URL de produção do aplicativo (http://<app_name>.azurewebsites.net
) são roteadas para o slot de produção. Você pode rotear uma parte do tráfego para outro slot. Esse recurso é útil se você precisar de comentários do usuário para uma nova atualização, mas não estiver pronto para lançá-la para produção.
Encaminhe o tráfego de produção automaticamente
Para rotear o tráfego de produção automaticamente:
Vá para a página de recursos do seu aplicativo e selecione Slots de implantação.
Na coluna % de tráfego do slot para o qual você deseja rotear, especifique uma porcentagem (entre 0 e 100) para representar a quantidade de tráfego total que você deseja rotear. Selecione Guardar.
Depois que a configuração é salva, a porcentagem especificada de clientes é roteada aleatoriamente para o slot de não produção.
Depois que um cliente é automaticamente roteado para um slot específico, ele é "fixado" nesse slot durante a vida dessa sessão do cliente. No navegador do cliente, você pode ver a qual slot sua sessão está fixada observando o x-ms-routing-name
cookie em seus cabeçalhos HTTP. Uma solicitação que é roteada para o slot de "preparação" tem o cookie x-ms-routing-name=staging
. Uma solicitação que é roteada para o slot de produção tem o cookie x-ms-routing-name=self
.
Encaminhar o tráfego de produção manualmente
Além do roteamento automático de tráfego, o Serviço de Aplicativo pode rotear solicitações para um slot específico. Isso é útil quando você quer que seus usuários possam aceitar ou desativar seu aplicativo beta. Para rotear o tráfego de produção manualmente, use o x-ms-routing-name
parâmetro query.
Para permitir que os usuários desativem seu aplicativo beta, por exemplo, você pode colocar este link em sua página da Web:
<a href="<webappname>.azurewebsites.net/?x-ms-routing-name=self">Go back to production app</a>
A cadeia de caracteres x-ms-routing-name=self
especifica o slot de produção. Depois que o navegador do cliente acessa o link, ele é redirecionado para o slot de produção. Cada solicitação subsequente tem o x-ms-routing-name=self
cookie que fixa a sessão no slot de produção.
Para permitir que os usuários aceitem seu aplicativo beta, defina o mesmo parâmetro de consulta para o nome do slot de não produção. Eis um exemplo:
<webappname>.azurewebsites.net/?x-ms-routing-name=staging
Por padrão, os novos slots recebem uma regra de roteamento de 0%
, um valor padrão é exibido em cinza. Quando você define explicitamente o valor da regra de roteamento como 0%
exibido em preto, os usuários podem acessar o slot de preparo manualmente usando o x-ms-routing-name
parâmetro query. Mas eles não serão roteados para o slot automaticamente porque a porcentagem de roteamento está definida como 0. Este é um cenário avançado onde você pode "esconder" seu slot de preparação do público, permitindo que equipes internas testem alterações no slot.