Compartilhar via


Configurar a arquitetura de implantação de três camadas usando o Application Request Routing

pela Equipe do IIS

Visão geral

Este tópico guia você pelas etapas para configurar uma arquitetura de implantação de três camadas usando o Application Request Routing. A arquitetura de implantação de 3 camadas consiste em uma camada da Web, uma camada de servidor de aplicativos e uma camada de dados, conforme mostrado abaixo:

Diagrama de três camadas de implantação de arquitetura e suas conexões entre si.

Normalmente, nesse cenário de implantação, o conteúdo estático é servido pelos servidores de camada 1, enquanto o conteúdo dinâmico é atendido pela lógica de negócios em servidores de camada 2.

Meta

Configurar a arquitetura de implantação de 3 camadas usando o Application Request Routing. Neste passo a passo, o foco é como configurar o servidor de ARR para fornecer conteúdo estático diretamente do servidor de ARR, enquanto encaminha as solicitações de conteúdo dinâmico para os servidores de aplicativos.

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, dois servidores de conteúdo com sites e aplicativos em funcionamento
  • Conteúdo estático disponível no servidor de Application Request Routing

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

Como outro pré-requisito, você deverá ter definido e configurado um farm de servidores, usando as etapas descritas em Definir e configurar um grupo de servidores de ARR (Application Request Routing).

Etapa 1 – Alterar regras de reescrita de URL para filtrar solicitações estáticas.

Nesta etapa, as regras de reescrita de URL são alteradas para que as solicitações para determinadas extensões ou caminhos sejam atendidas diretamente do servidor de Application Request Routing. As solicitações estáticas podem ser identificadas examinando as extensões de arquivo, como .jpg ou .gif. Se os recursos estáticos estiverem contidos em determinadas pastas, como /images/, as regras de reescrita de URL poderão procurar o caminho no URL.

Neste passo a passo, você alterará as regras de reescrita de URL para procurar extensões de .jpg e .css, juntamente com a pasta /images/. Se o recurso solicitado tiver uma extensão .jpg ou .css, ele será atendido diretamente do servidor de ARR. Da mesma forma, se o URL solicitado contiver /images/, essa solicitação será atendida do servidor de ARR. Todas as outras solicitações serão encaminhadas para servidores de aplicativos por trás do servidor de ARR.

Antes de continuar, verifique se o conteúdo estático está disponível no servidor de ARR para servir. O conteúdo pode ser disponibilizado localmente no servidor de ARR ou o conteúdo compartilhado pode ser usado.

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,myServerFarm, que foi criado em Definir e Configurar um Grupo de Servidores ARR (Application Request Routing).
  3. Os seguintes ícones são mostrados:
    Captura de tela da caixa de diálogo Farm de Servidores.
  4. Clique duas vezes em Regras de Roteamento. Os tipos *.jpg e *.css na caixa de texto Solicitações com as extensões a seguir não são encaminhadas. As várias extensões são separadas por vírgula (,). Para corresponder ao caminho no URL, digite */image/* na caixa de textoSolicitações com os padrões a seguir não são encaminhadas. O caractere curinga (*) é usado para corresponder a qualquer caractere antes e depois do caminho /image/.
    Captura de tela da seção Roteamento da tela Regras de Roteamento.
  5. Para verificar se as imagens estáticas estão sendo atendidas do servidor de ARR, inspecione os logs. Por padrão, os logs estão em c:\inetpub\logs\LogFiles\. Em servidores de aplicativos por trás do servidor de ARR, não deve haver nenhuma solicitação que faça referência a *.jpg, *.css ou */images/* no arquivo de log.

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. Desmarque todas as regras de reescrita de URL inserindo:

    appcmd.exe clear config -section:system.webServer/rewrite/globalRules
    

Para alterar as regras de roteamento para que as solicitações de recursos com extensões *.jpg e *.css e um caminho que corresponda a */images/*, não sejam encaminhadas para os servidores de aplicativos, insira:

  • appcmd.exe set config  -section:system.webServer/rewrite/globalRules 
    /+"[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True']"
     /commit:apphost
    
  • appcmd.exe set config  -section:system.webServer/rewrite/globalRules 
    /[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].match.url:"*"  
    /commit:apphost
    
  • appcmd.exe set config  -section:system.webServer/rewrite/globalRules 
    /+"[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].conditions.
    [input='EXT_{URL}',negate='True',pattern='*.jpg']" 
    /commit:apphost
    
  • appcmd.exe set config  -section:system.webServer/rewrite/globalRules 
    /+"[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].conditions.
    [input='EXT_{URL}',negate='True',pattern='*.css']" 
    /commit:apphost
    
  • appcmd.exe set config  -section:system.webServer/rewrite/globalRules 
    /+"[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].conditions.
    [input='{URL}',negate='True',pattern='*/images/*']" 
    /commit:apphost
    
  • appcmd.exe set config  -section:system.webServer/rewrite/globalRules 
    /[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].action.type:"Rewrite" 
    /[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].action.url:"http://myServerFarm1/{R:0}"  
    /commit:apphost
    

Resumo

Agora você alterou com êxito as regras de reescrita de URL usando a interface do usuário de roteamento de solicitação de aplicativo para habilitar um cenário de arquitetura de implantação de 3 camadas. Para obter mais propriedades e recursos de Application Request Routing, consulte o passo a passo do Balanceamento de Carga HTTP usando o passo a passo do ARR (Application Request Routing).

Ao usar o ARR como um proxy reverso, o cenário pode ser melhorado ainda mais quando usado com a Reescrita de URL versão 2, que tem o recurso para reescrever os cabeçalhos de resposta e o corpo da entidade.