Compartilhamento de Carga de Trabalho com Sistemas de Mensagens de Publicação/Assinatura

No sistema de mensagens de publicação/assinatura, o sistema de mensagens envia uma cópia de cada mensagem publicada para cada assinatura correspondente. Os assinantes, isto é, os aplicativos que consomem mensagens de publicação/assinatura, consomem essas mensagens de uma assinatura individual. Para balancear a carga de trabalho nas múltiplas instâncias de um aplicativo, por exemplo, quando um aplicativo é executado em um cluster de servidores, todas as instâncias do aplicativo devem usar a mesma assinatura.

A Figura 1 mostra que, nessa configuração, apenas uma instância do aplicativo processa cada mensagem que é enviada para a assinatura. No entanto, a Figura 2 mostra que, se diferentes instâncias do mesmo aplicativo estiverem configuradas para receber mensagens de diferentes assinaturas, cada instância processará uma cópia de cada mensagem correspondente, para que cada mensagem seja distribuída (espalhada).

Figura 1. Instâncias de Aplicativo que Compartilham uma Única Assinatura (Compartilhamento de Carga de Trabalho)
Três mensagens de um publicador vão para uma única assinatura, em seguida, cada mensagem vai para apenas uma das três instâncias do aplicativo separadas.
Figura 2. Instâncias de Aplicativo que Usam Assinaturas Individuais (Mensagens Espalhadas)
Três mensagens de um publicador vão todas para três assinaturas, em seguida, todas as três mensagens vão para cada uma das três instâncias do aplicativo separadas.

Para mensagens ponto a ponto, é possível usar destinos de fila e particionar uma fila para que as mensagens sejam balanceadas pela carga de trabalho. No entanto, não é possível particionar assinaturas dessa maneira.

Para o sistema de mensagens de publicação/assinatura, para configurar múltiplas instâncias de aplicativo para usar a mesma assinatura e, portanto, balancear a carga de trabalho da mensagem, você deve usar uma assinatura durável. As múltiplas instâncias do aplicativo devem poder consumir simultaneamente a partir da mesma assinatura. Esse tipo de assinatura chama-se uma assinatura durável compartilhada. Para configurar uma assinatura durável compartilhada, você configura a propriedade Compartilhar assinaturas duráveis da factory de conexão ou da especificação de ativação relevante.

Uma assinatura durável possui um mecanismo de sistema de mensagens inicial e uma identidade exclusiva, que é formada da identidade do cliente e do nome da assinatura. O sistema de mensagens pode acumular novas publicações correspondentes para a assinatura, mesmo quando não houver nenhum assinante ativo. O mecanismo de sistema de mensagens inicial acumula mensagens para uma assinatura usando um ponto de publicação. Quando um assinante é iniciado ou reiniciado, o sistema de mensagens usa a identidade exclusiva e o mecanismo do sistema de mensagens inicial para identificar o ponto de publicação, localizar a assinatura durável e entregar as mensagens acumuladas.

Uma assinatura não durável não possui uma identidade exclusiva. Ela dura o tempo de vida de seu assinante. Múltiplas instâncias de aplicativo não podem receber mensagens da mesma assinatura não durável.

É possível configurar a propriedade Assinatura durável compartilhada com um dos seguintes:
Em cluster
O barramento distribui trabalho entre clientes que se conectam a um membro do barramento no mesmo cluster quando os clientes usam o mesmo identificador de cliente e nome da assinatura durável.
Sempre compartilhado
O barramento distribui trabalho entre os clientes, independentemente de onde se conectam ao barramento, quando os clientes usam o mesmo identificador de cliente e nome da assinatura durável.
Jamais compartilhado
Os clientes não podem usar o mesmo identificador de cliente e o nome da assinatura durável como uma sessão existente.

Í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=cjt0015_
Nome do arquivo: cjt0015_.html