WS-Notification em um Ambiente em Cluster
O WebSphere Application Server permite agrupar servidores em um cluster para que o aplicativo possa ficar protegido contra falha de um único servidor (alta disponibilidade) ou para que a carga de trabalho do aplicativo possa ser distribuída entre vários servidores equivalentes (balanceamento de carga de trabalho). O barramento de integração de serviço também é configurável no cluster de servidores de aplicativos em várias configurações, caso você esteja armazenando em cluster para alta disponibilidade, gerenciamento de carga de trabalho ou ambos. Por exemplo, você pode escolher quantos mecanismos do sistema de mensagens serão configurados no cluster (de um até o número de servidores no cluster) e pode escolher o servidor (se houver algum) para o qual um determinado mecanismo do sistema de mensagens efetuará failover se seu servidor principal falhar.
Um padrão comum é configurar uma política de grupo principal 1 de N para um mecanismo do sistema de mensagens para que haja um único mecanismo do sistema de mensagens no cluster, e o mecanismo do sistema de mensagens possa ser movido para qualquer outro servidor no cluster, se o servidor host falhar. Isto assegura que o estado associado ao mecanismo do sistema de mensagens (por exemplo, notificações de eventos e assinaturas de exemplo) esteja disponível para aplicativos, mesmo que uma parte específica do hardware falhe.
Topologia de Balanceamento de Carga
Nessa topologia, o administrador pretende compartilhar pedidos do aplicativo cliente entre vários servidores na célula, sem sobrecarregar nenhum servidor específico. Isto requer que todos os pontos de serviço do WS-Notification do serviço do WS-Notification possam ser considerados iguais - em específico, que todos os namespaces de tópicos estejam disponíveis em cada ponto de serviço do WS-Notification do intermediário.
WebSphere Application ServerO suporte WS-Addressing específico do no proxy assegura que as solicitações de serviços da Web que tenham uma afinidade com um mecanismo do sistema de mensagens em particular (por exemplo fluxos de assinatura Retomar ou Destruir) sejam roteados de volta ao servidor no qual o mecanismo do sistema de mensagens está localizado.
A figura a seguir mostra uma configuração de um ambiente em cluster configurado para balanceamento de carga. Os pedidos de três aplicativos clientes diferentes são recebidos por um servidor proxy do WebSphere Application Server e cada pedido é encaminhado a um único servidor de aplicativos diferente. As informações sobre cada pedido são armazenadas por cada mecanismo do sistema de mensagens em um banco de dados separado. O código WS-Addressing específico do WebSphere Application Server no proxy registra qual servidor recebeu cada pedido, roteando cada pedido subsequente para o servidor de aplicativos correto.

Topologia de Alta Disponibilidade
Nessa topologia, o administrador cria um cluster de servidores que contém um único mecanismo do sistema de mensagens e um ponto de serviço do WS-Notification, para assegurar que, caso o servidor que contém o mecanismo do sistema de mensagens falhe, os recursos que ele gerencia (assinaturas, notificações de eventos) permaneçam disponíveis aos aplicativos remotos. O mecanismo do sistema de mensagens está configurado para failover entre os vários servidores no cluster para oferecer uma operação altamente disponível.
O ponto de serviço do WS-Notification é implementado em cada servidor no cluster. Os recursos (assinaturas, registros do publicador e pontos de pull) são mantidos no mecanismo do sistema de mensagens, portanto, para executar um pedido, o ponto de serviço cria uma conexão com o servidor na qual o mecanismo do sistema de mensagens está em execução.
O servidor proxy do WebSphere Application Server é um tipo especial de servidor de aplicativos que fornece o ponto inicial de entrada para pedidos na empresa. Para o WS-Notification, um servidor proxy é usado na maioria das vezes como o front-end para um cluster de servidores de aplicativos, em que faz o balanceamento da carga de trabalho dos pedidos iniciais (como notificações de eventos) nos servidores no cluster. Alguns pedidos do WS-Notification (como criação de uma assinatura) criam uma afinidade com um mecanismo do sistema de mensagens específico e, portanto, quando pedidos subseqüentes relacionados a esse recurso forem recebidos pelo servidor proxy, eles serão roteados para o servidor que está hospedando o mecanismo do sistema de mensagens relevante, mesmo que o servidor tenha sido alterado devido a uma falha desde a criação do recurso.
WebSphere Application ServerO suporte WS-Addressing específico do no proxy assegura que as solicitações de serviços da Web que tenham uma afinidade com um mecanismo do sistema de mensagens em particular (por exemplo fluxos de assinatura Retomar ou Destruir) sejam roteados de volta ao servidor no qual o mecanismo do sistema de mensagens está localizado.
A figura a seguir mostra uma configuração de um ambiente em cluster configurado para alta disponibilidade. Os pedidos dos aplicativos clientes são recebidos por um servidor proxy do WebSphere Application Server e encaminhados para um servidor de aplicativos dentro de um cluster. O código WS-Addressing específico do WebSphere Application Server no proxy registra qual servidor recebeu o pedido. As informações sobre o pedido estão armazenadas em um banco de dados pelo mecanismo do sistema de mensagens para o cluster. Se o servidor de aplicativos falhar seu lugar será ocupado por outro servidor no cluster. O código WS-Addressing no proxy roteia novamente os pedidos subseqüentes para o servidor de aplicativos de substituição.

Topologia de Alta Disponibilidade de Carga Balanceada
Essa topologia é uma combinação das topologias de carga balanceada e alta disponibilidade. Nessa topologia, há mais de um mecanismo do sistema de mensagens do cluster (em que o número de mecanismos do sistema de mensagens é menor ou igual ao número de servidores). Os pedidos iniciais recebidos pelo servidor proxy têm sua carga equilibrada no cluster, naqueles servidores que hospedam pontos de serviço do WS-Notification. Os pedidos subseqüentes para um recurso criado por esse pedido (ou seja, uma assinatura) são roteados de volta para o mecanismo do sistema de mensagens afim, mesmo onde ele pode ter falhado em um servidor diferente no cluster.
Observe que isto inclui o caso em que mais de um dos mecanismos do sistema de mensagens no cluster está localizado em um único servidor como resultado de um failover. Neste caso, ainda é importante que o Ponto de Serviço conecte-se ao mecanismo do sistema de mensagens correto.
A figura a seguir mostra uma configuração de um ambiente em cluster configurado para alta disponibilidade e balanceamento de carga. Esse cluster possui três servidores de aplicativos. Dois destes servidores utilizam o mesmo mecanismo do sistema de mensagens e o terceiro utiliza um mecanismo do sistema de mensagens diferente. Um pedido de um aplicativo cliente é recebido por um servidor proxy do WebSphere Application Server e encaminhado para um dos servidores de aplicativos que compartilha um mecanismo do sistema de mensagens. O código WS-Addressing específico do WebSphere Application Server no proxy registra qual servidor recebeu o pedido. O servidor de aplicativos falha e seu lugar é ocupado por um dos outros dois servidores. O código WS-Addressing no proxy roteia pedidos subseqüentes para um recurso criado pelo pedido inicial (ou seja, uma assinatura) para o servidor de aplicativos remanescente que utiliza o mesmo mecanismo do sistema de mensagens.
