Mapeamento de Pedidos

O servidor proxy usa o mapeamento de solicitação para fazer a correspondência de uma solicitação de HTTP recebida com um aplicativo implementado na célula ou na regra de roteamento.

Diferente do Apache Web Server ou Caching Proxy, que possuem arquivos de configuração simples com precedência de roteamento herdada para a classificação de diretivas, o servidor proxy usa um melhor mecanismo de correspondência para determinar o aplicativo instalado ou regra de roteamento que corresponda a uma solicitação. Os padrões de host virtual ou URI determinam a melhor correspondência para um módulo da Web ou regra de roteamento. Para aplicativos implementados em clusters, o servidor proxy mantém afinidade (ID do Secure Sockets Layer, cookie e regravação de URL), caso contrário, será utilizada uma abordagem round-robin calculada para selecionar o servidor de destino. Os exemplos a seguir tratam de vários cenários de roteamento para quando as regras de roteamento e os aplicativos forem implementados na mesma célula.

Ambiente de Proxy

Um servidor proxy do WebSphere chamado proxy1 está ativo na mesma célula que os aplicativos e as regras de roteamento. Todos os aplicativos e regras de roteamento estão ativados na célula para proxy1 e PROXY_HTTP_ADDRESS para proxy1 é definido como 80.

Host Virtual Nome do host Porta
default_host host1.company.com 80
  host1.company.com 9080
  * 80
proxy_host host2.company.com 80
  * 443
  * 80
server_host host3.company.com 80
Nome do grupo de URI Padrões de URI
ALL /*
ROOMS /kitchen/*, /bathroom/*, /bedroom/*
CONFLICT /WM2C/*
Nome do cluster de servidor genérico Protocolo Host, Porta
CLUSTER1 HTTP webserver1.company.com 9081
    webserver2.company.com 9083
CLUSTER2 HTTP host47.company.com 8088
    host48.company.com 8088
CLUSTER2-SSL HTTPS host47.company.com 8443
    host48.company.com 8443
Nome da regra de roteamento Host Virtual Grupo de URI Ação
ALLTOCLUSTER1 proxy_host ALL Cluster de servidor genérico - CLUSTER1
ROOMTOCLUSTER2 proxy_host ROOMS Cluster de servidor genérico - CLUSTER2
ALLTOCLUSTER2 server_host ALL Cluster de servidor genérico - CLUSTER2
REDIRECTTOCONFLICT default_host CONFLICT Redirecionar - http://www.conflict.com
Nome do Aplicativo Raiz de Contexto Nome do módulo da Web Host Virtual Padrões de URI do módulo da Web
App1 /WM1A/ Web Mod A default_host wm1a.jsp
  /WM1B/ Web Mod B default_host wm1b.jsp
App2 /WM2C/ Web Mod C default_host /*, wm2c.jsp
  /WM2D/ Web Mod D default_host /*, wm2d.jsp
Exemplo 1: Solicitação básica
O proxy proxy1 recebe o seguinte pedido:
GET /WM1A/wm1a.jsp HTTP/1.1 
Host: host1.company.com

O resultado é que o arquivo wm1a.jsp é enviado como a resposta. A regra de roteamento ALLTOCLUSTER1 é uma possível correspondência, mas Web Mod A é escolhida como a melhor correspondência por proxy1 porque a combinação de sua raiz de contexto e o padrão de URI /WM1A/wm1a.jsp é uma correspondência mais adequada que /*. Web Mod A também é escolhida como a melhor correspondência porque seu host virtual contém o alias host1.company.com:80, que é uma correspondência mais específica que o alias curinga *:80.

Exemplo 2: Regras de roteamento que usam o mesmo grupo de URIs e hosts virtuais diferentes
O proxy proxy1 recebe o seguinte pedido:
GET /index.html HTTP/1.1 
Host: host3.company.com

O resultado é que o proxy proxy1 mapeia a solicitação para a regra de roteamento ALLTOCLUSTER2 e uma resposta é recebida de um servidor no CLUSTER2. A regra de roteamento ALLTOCLUSTER1 é uma possível correspondência e poderá manipular o pedido se a regra de roteamento ALLTOCLUSTER2 não existir. No entanto, a regra ALLTOCLUSTER2 é a melhor correspondência porque seu host virtual (server_host) lista explicitamente host3.company.com.

Exemplo 3: Regras de roteamento que usam o mesmo host virtual e grupos de URIs diferentes
O proxy proxy1 recebe o seguinte pedido:
GET /kitchen/sink.gif HTTP/1.1 
Host: host2.company.com

O resultado é que o proxy proxy1 mapeia a solicitação para a regra de roteamento ROOMSTOCLUSTER2 e um servidor do cluster CLUSTER2 envia uma resposta. A regra de roteamento ALLTOCLUSTER1 é uma possível correspondência, mas a regra ROOMSTOCLUSTER2 é a melhor correspondência porque seu grupo de URI contém um padrão /kitchen/* que é uma correspondência mais adequada para o URI de pedido /kitchen/sink.gif.

Exemplo 4: O grupo de URI de regra de roteamento está em conflito com o padrão de URI de um módulo da Web que usa o mesmo host virtual
O proxy proxy1 recebe o seguinte pedido:
GET /WM2C/index.html HTTP/1.1 
Host: host1.company.com

O resultado é indeterminado. Não se sabe se Web Mod C ou a regra de roteamento REDIRECTTOCONFLICT manipulará o pedido porque utilizam o mesmo host virtual e possuem o mesmo padrão de URI. Nesses casos, a mensagem ID DWCT0007E é exibida no arquivo SystemOut.log para o proxy proxy1. Nesse exemplo, alterar a regra de roteamento REDIRECTTOCONFLICT para utilizar um host virtual diferente resolverá o problema.

Nota: Esse tópico faz referência a um ou mais arquivos de log do servidor de aplicativos. Como uma recomendação alternativa, é possível configurar o servidor para usar a infraestrutura de log e rastreio do High Performance Extensible Logging (HPEL) em vez de usar os arquivos SystemOut.log , SystemErr.log, trace.log e activity.log em sistemas distribuídos e IBM® i. Também é possível usar HPEL em conjunção com os recursos de criação de log z/OS nativos. Se você estiver usando HPEL, será possível acessar todas as informações de log e rastreio usando a ferramenta de linha de comandos LogViewer a partir do diretório bin do perfil do servidor. Consulte as informações sobre a utilização do HPEL para resolução de problemas dos aplicativos para obter mais informações sobre o uso do HPEL.
Exemplo 5: O endereço PROXY_HTTP_ADDRESS não está no host virtual
Suponha que o endereço de proxy proxy1, PROXY_HTTP_ADDRESS, seja alterado para 81, enquanto as outras informações de configuração permanecem a mesmas. O proxy proxy1 recebe o seguinte pedido:
GET /index.html HTTP/1.1 
Host: host1.company.com:81

O resultado é que o proxyproxy1 não é capaz de manipular a solicitação porque o endereçoPROXY_HTTP_ADDRESS não está disponível em um host virtual e enviará uma resposta HTTP 404 de volta para o cliente.


Ícone que indica o tipo de tópico Tópico de Conceito



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cjpx_reqmap
Nome do arquivo: cjpx_reqmap.html