Compartilhar via


Gerenciamento de programa piloto usando o Application Request Routing

pela Equipe do IIS

Visão geral

Este tópico guia o leitor pelas etapas para iniciar e gerenciar programas piloto ou beta usando o Application Request Routing. O Application Request Routing pode ser usado para direcionar e rotear os usuários apropriados para o site piloto ou também pode ser usado para limitar e gerenciar a quantidade de tráfego roteada para o site piloto. Este passo a passo se concentra em como o Application Request Routing pode ser usado para rotear solicitações específicas para o site piloto com base no perfil do usuário.

Meta

Para configurar o Application Request Routing para gerenciar e reduzir os riscos em torno da inicialização de um programa piloto.

Pré-requisitos

Esse passo a passo requer os seguintes pré-requisitos:

  • IIS 7.0 ou superior no Windows 2008 (qualquer SKU) ou mais recente.
  • Microsoft Application Request Routing Versão 1 e módulos dependentes.
  • No mínimo, quatro servidores de conteúdo com sites e aplicativos em funcionamento. Dois servidores serão usados para simular o site de produção e os outros dois servidores simularão o site piloto.
  • Navegador alternativo para o Microsoft Internet Explorer, como o Firefox, em um computador com o .NET 3.5 instalado. (Essa configuração é usada apenas para fins de teste.)

Siga as etapas descritas neste documento para instalar o Application Request Routing.

Como outro pré-requisito é que o leitor tenha definido e configurado dois farms de servidores, seguindo as etapas descritas em Definir e configurar um grupo de servidores de ARR (Application Request Routing). Um farm de servidores representará o ambiente de produção, enquanto o outro representará o ambiente piloto.

Etapa 1 – Alterar as regras de reescrita de URL para rotear solicitações com base no perfil do usuário

Nesta etapa, as regras de reescrita de URL são alteradas para que somente os usuários que instalaram o .NET 3.5 e estão usando o IE (Microsoft Internet Explorer), sejam roteados para o site piloto, definido como pilotSiteServers. Todos os outros são roteado para o site de produção, definido como productionSiteServers.

Para alterar as regras de reescrita de URL usando a interface do usuário:

  1. Inicie o Gerenciador do IIS.

  2. Selecione o farm de servidores, pilotSiteServers.

  3. Os seguintes ícones são mostrados:

    Captura de tela dos ícones no painel do farm de servidores.

  4. Clique duas vezes em Regras de Roteamento.

  5. Como esse cenário envolve vários farms de servidores com correspondência condicional de cabeçalhos de solicitação HTTP, as alterações são feitas usando a interface do usuário de reescrita de URL que expõe opções adicionais. Selecione Reescrita de URL em Roteamento Avançado.

    Captura de tela de U R L Rewrite na seção Roteamento Avançado em Regras de Roteamento.

  6. Observe que duas regras já foram criadas, mas devem ser alteradas.

    Captura de tela do painel Reescrever U R L com regras padrão predefinidas.

  7. A ordem das regras importa neste passo a passo. Se ARR_productionSiteServers_loadbalance estiver acima ARR_pilotServers_loadbalance, você poderá alterar a ordem das regras usando Mover para cima ou Mover para baixo, depois de selecionar a regra.

  8. Selecione ARR_pilotSite_Servers_loadbalance e selecione Editar... no painel Ações.

    Captura de tela do painel Editar Regra para o balanceamento de carga de Servidores de Site piloto A R R com as configurações padrão selecionadas.

  9. Os clientes com IE com .NET 3.5 devem ser especificados para acessar o farm de servidores pilotSiteServers. Faça isso adicionando condições. Selecione Adicionar Condições e selecione Adicionar....

    Captura de tela de uma caixa de diálogo Adicionar Condições vazia.

  10. Insira {HTTP_USER_AGENT} como Entrada de condição e *MSIE* como Padrão. Essa condição verifica se o cliente está usando o IE.

    Captura de tela da entrada de Condição como chave H T T P sublinhar USUÁRIO sublinhar AGENTE chave, cinta e Padrão como asterisco M I S E asterisco.

  11. Adicione outra condição para verificar a versão do .NET. Selecione Adicionar... e insira {HTTP_USER_AGENT} como Entrada de condição e *.NET CLR 3.5* como Padrão.

    Captura de tela de outra condição com Padrão como asterisco, ponto NET, espaço C, L, R, espaço 3, ponto 5, asterisco.

  12. Por fim, desmarque a caixa de seleção Interromper processamento de regras subsequentes e selecione Aplicar, para salvar as alterações.

    Captura de tela de Parar o processamento de regras subsequentes após a seção Propriedades da ação.

Conforme observado acima, a ordem das regras é importante. Isso ocorre porque a reescrita de URL processa as regras em ordem quando Interromper processamento de regras subsequentes, está desmarcada. Portanto, nesse caso, a primeira regra, ARR_pilotSiteServers_loadbalance, será considerada primeiro. Essa regra tenta corresponder se o cliente está usando o IE e tem o .NET 3.5 instalado. Nesse caso, as solicitações são encaminhadas para o farm de servidores pilotSiteServers. Como a caixa de seleção Interromper processamento de regras subsequentes está desmarcada, ela processará a segunda regra, ARR_productionSiteServers_loadbalance, que roteará todas as solicitações restantes para o farm de servidores productionSiteServers.

Para alterar as regras de reescrita de URL, usando a linha de comando:

  1. Abra um prompt de comando com privilégios de administrador.

  2. Navegue até %windir%\system32\inetsrv.

  3. Para alterar a regra de ARR_pilotSiteServers_loadbalance, para verificar se há IE e .NET 3.5 no HTTP_USER_AGENT, insira:

    appcmd.exe set config  -section:system.webServer/rewrite/globalRules /+"[name='ARR_pilotSiteServers_loadbalance'].conditions.[input='{HTTP_USER_AGENT}',pattern='*MSIE*']" /commit:apphost
    
    appcmd.exe set config  -section:system.webServer/rewrite/globalRules /+"[name='ARR_pilotSiteServers_loadbalance'].conditions.[input='{HTTP_USER_AGENT}',pattern='*.NET CLR 3.5*']" /commit:apphost
    
  4. Para desmarcar Interromper processamento de regras subsequentes para ARR_pilotSiteServers_loadbalance, insira:

    appcmd.exe set config  -section:system.webServer/rewrite/globalRules /[name='ARR_pilotSiteServers_loadbalance'].stopProcessing:"False"  /commit:apphost
    

Resumo

Agora você alterou com êxito as regras na reescrita de URL e aproveitou o Application Request Routing, para rotear apenas um subconjunto de seus usuários para o site piloto. Para obter mais propriedades e recursos de Application Request Routing, consulte outros passos a passos sobre o Application Request Routing.