WebSphere Extended Deployment, Version 6.0.x     Sistemas Operacionais: AIX,, HP-UX, Linux, Solaris , Windows , z/OS

Reequilíbrio da Sessão HTTP

O WebSphere Extended Deployment pode equilibrar de forma dinâmica e ativa a distribuição das sessões HTTP entre os servidores de aplicativos.

O WebSphere Application Server designa sessões HTTP com base na afinidade do servidor de aplicativos. Após uma sessão ser estabelecida em um determinado servidor de aplicativos, os pedidos subseqüentes que pertencem à mesma sessão são designados para o servidor de aplicativos que possui afinidade de sessão estabelecida.

As afinidades de sessão fazem com que o carregamento da sessão seja equilibrado para um cluster a longo prazo e, geralmente, quaisquer desequilíbrios que ocorrem têm pouca duração e são toleráveis. No entanto, é possível utilizar o reequilíbrio de sessão para ajudar alguns dos desequilíbrios de prazo menor que podem ocorrer, sem modificar os benefícios em desempenho das afinidades de sessão.

O WebSphere Extended Deployment introduz o reequilíbrio de sessão para expedir o equilíbrio das sessões através de um cluster. Você pode utilizar o reequilíbrio de sessão se for utilizar sessões distribuídas e rastrear suas sessões com cookies. Por padrão, os servidores de aplicativos do WebSphere Extended Deployment são configurados com a Monitoração de Sessão ativada utilizando cookies, mas sem sessões distribuídas.

Para configurar os servidores de aplicativos para sessões distribuídas, consulte Configurações de Ambiente Distribuído. Para obter informações detalhadas sobre as duas opções disponíveis, consulte Configurando para Persistência de Sessão de Banco de Dados e Configurando a Replicação de Memória a Memória para o Modo Ponto a Ponto (Replicação Padrão de Memória a Memória).

O tópico "Configurando a Replicação de Memória a Memória para o Modo Ponto a Ponto (Replicação Padrão de Memória a Memória)" descreve as etapas para configurar servidores em clusters estáticos, mas essas etapas também podem ser utilizadas para servidores em clusters dinâmicos. Se estiver configurando clusters dinâmicos, deixe o cluster dinâmico no modo estático inicialmente para que os servidores no cluster não sejam iniciados automaticamente. Depois de alterar as configurações de ambiente distribuído de todos os servidores no cluster, comute o cluster dinâmico para o modo automático. Se você não comutar os modos, precisará parar e reiniciar os servidores que já estejam iniciados no cluster dinâmico para efetivar as alterações das configurações de ambiente distribuído.

Quando um novo servidor fica disponível em um cluster dinâmico, ele não tem nenhuma sessão HTTP designada. No entanto, os servidores existentes no cluster dinâmico têm sessões com afinidade designada.

[Version 6.0 only] Com o WebSphere Extended Deployment Versão 6.0, a meta do reequilíbrio de sessões é redesignar sessões para que cada servidor tenha uma proporção igual de todas as sessões existentes. O número de sessões que são designadas ao novo servidor de aplicativos é determinado a partir do número de sessões em cada servidor de aplicativos existente e do peso de cada servidor de aplicativos. A função de reequilíbrio de sessões é executada em cada servidor de aplicativos. Cada servidor de aplicativos é informado de novos servidores de aplicativos que se tornam disponíveis e dos pesos e números de sessões para cada servidor. Com esses números, o servidor de aplicativos pode determinar quantas sessões devem ser movidas do servidor de aplicativos atual para o novo servidor de aplicativos. O número de sessões a ser movido é então transmitido para um filtro de servlet HTTP que é incluído dinamicamente no início do servidor para interceptar e redirecionar os pedidos de sessão.

[Version 6.0.1 and later] Com o WebSphere Extended Deployment Versão 6.0.1 e posterior, a meta do reequilíbrio de sessões é redesignar sessões para que o número de sessões em execução em cada servidor no cluster dinâmico seja proporcional ao peso designado dos servidores. O DWLM (Dynamic Workload Manager) desempenha a função de reequilíbrio de sessão. O DWLM decide quantas sessões devem ser movidas e para onde mover as sessões com base no conhecimento que ele tem sobre todo o cluster dinâmico. O componente DWLM é fatorado no local da sessão e pode iniciar movimentos de sessões além de alterar o peso em servidores específicos. As movimentações podem ser iniciadas por quaisquer eventos que o DWLM monitora, tais como início de novos servidores, servidores sobrecarregados etc.

[Version 6.0.1 and later] Se você estiver utilizando o suporte de sessão HTTP baseado em ObjectGrid em vez do gerenciamento de sessão normal do WebSphere Application Server, o reequilíbrio de Sessões HTTP não é suportado.

Se estiver utilizando sessões que são mantidas por regravação de URL (Localizador Uniforme de Recursos) ou IDs de SSL (Secure Sockets Layer), nenhum reequilíbrio é executado. O reequilíbrio também não é executado em pedidos HTTP POST. As sessões não serão reequilibradas se a sessão for acessada emitindo o pedido HTTP diretamente para a porta HTTP do servidor de aplicativos, ignorando o On Demand Router. O contador PMI para sessões de memória reflete as sessões em movimento. Especificamente, o contador PMI diminui em servidores existentes conforme as sessões se movem e aumenta nos novos servidores recentemente iniciados. No entanto, as novas sessões têm sua carga equilibrada através de qualquer um dos servidores no cluster. Consulte o WebSphere Application Server Network Deployment Information Center para obter informações adicionais sobre a análise dos dados PMI e sobre as boas práticas para a utilização das sessões HTTP.

Você pode ativar ou desativar o reequilíbrio de sessão ajustando a propriedade customizada HttpSessionRebalanceOff no console administrativo. Consulte Propriedades Customizadas para a Disposição de Aplicativos para obter informações adicionais.

[Version 6.0 only]

Exemplo:

Com o reequilíbrio de sessões ativado e início de um novo servidor no cluster dinâmico, as seguintes ações redistribuem os pedidos de sessão para o novo servidor:

  1. Um novo servidor de aplicativos se torna disponível no cluster dinâmico.
  2. O componente de reequilíbrio de sessões em cada servidor existente recebe uma notificação sobre a inclusão, juntamente com os pesos de cada servidor e o número de sessões em cada servidor existente. Com base nessas informações, o componente de reequilíbrio de sessões em cada servidor calcula o número de sessões a serem movidas para o novo servidor.
  3. Enquanto isso, o cliente gera um pedido para uma sessão existente, enviando o cookie estabelecido no navegador do cliente.
  4. O cookie contém um ID de sessão e um ID do servidor, e é designado para um servidor de aplicativos existente que tenha uma afinidade de sessão estabelecida.
  5. No servidor com a afinidade de sessão, se o número de sessões a serem movidas para o novo servidor não for satisfeito, o filtro de servlet modifica a resposta ao pedido. Em vez de enviar a resposta real, o filtro de servlet faz um redirecionamento de volta para o cliente que contém o ID do servidor para o novo servidor de aplicativos. Se o servidor de aplicativos não mover a sessão para o novo servidor de aplicativos, o servlet filtra o redirecionamento de pedido para os servlets.
O diagrama a seguir ilustra esse processo:
Figure 1. Reequilíbrio de Sessão HTTP no WebSphere Extended Deployment Versão 6.0

[Version 6.0.1 and later]

Exemplo:

O exemplo a seguir mostra o reequilíbrio de sessões em um ambiente do Extended Deployment Versão 6.0.1 e posterior:

  1. No cluster dinâmico, um novo servidor se torna disponível ou um servidor existente se torna sobrecarregado.
  2. O DWLM calcula o número de sessões a serem movidas. Se um novo servidor fica disponível, o DWLM pode designar sessões ao novo servidor de servidores existentes. Se um servidor existente ficar sobrecarregado, o DWLM poderá mover sessões do servidor sobrecarregado para outros servidores no cluster dinâmico.
  3. Enquanto isso, o cliente gera um pedido para uma sessão existente, enviando o cookie estabelecido no navegador do cliente.
  4. O cookie contém um ID de sessão e um ID do servidor, e é designado para um servidor de aplicativos existente que tenha uma afinidade de sessão estabelecida.
  5. Se o DWLM tiver indicado que um número de sessões do servidor de destino necessitam ser movidas para outros servidores no cluster, o filtro de servlet envia um redirecionamento contendo o novo ID do servidor de volta ao cliente. Se o número de sessões que o DWLM recomenda que sejam movidas para outros servidores já tiverem sido movidas, o filtro de servlet redireciona o pedido para o servidor identificado pelo ID do servidor.
O diagrama a seguir ilustra esse processo:
Figure 2. Reequilíbrio de Sessão HTTP no WebSphere Extended Deployment Versão 6.0.1 e Posterior
Cenário de Reequilíbrio de Sessão da v601



Related tasks
Criando e Configurando Clusters Dinâmicos

Tópico de Conceito    

Termos de Uso | Feedback Última atualização: Mar 21, 2006 12:46:23 PM EST
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r0/index.jsp?topic=?topic=/com.ibm.websphere.xd.doc/info/odoe_task/codrsessionbalance.html

© Copyright IBM 2004, 2006. Todos os Direitos Reservados.
Este centro de informações é desenvolvido em tecnologia Eclipse. (http://www.eclipse.org)