Destinos Externos e Destinos de Alias
Destinos externos e destinos de alias são tipos de destino de barramento. Um destino externo representa um destino que é definido em outro barramento (um barramento externo). Um destino de alias é mapeado para um nome alternativo de um destino de barramento que é definido no barramento local ou em um barramento externo.
- Para que um aplicativo envie mensagens para um destino que está definido
no barramento local, especifique o nome do barramento e o nome do destino
no objeto de destino JMS (fila ou tópico).
É possível omitir o nome do barramento, porque o padrão é o nome do barramento local, mas, para um sistema com mais de um barramento, é aconselhável especificar o nome.
- Para que um aplicativo envie mensagens para um destino que está definido
no barramento externo, especifique o nome do barramento (isto é, o barramento externo)
e o nome do destino no objeto de destino JMS (fila ou tópico).
Não é necessário configurar nenhum objeto de destino no barramento
local.
A integração de serviço usa a definição do barramento externo que está configurado no barramento local. Essa definição inclui valores-padrão para os atributos de destino, como a qualidade de serviço padrão. Esses valores-padrão aplicam-se a todos os destinos desse barramento externo. Para obter informações adicionais, consulte o tópico sobre o sistema de mensagens ponto a ponto em múltiplos barramentos.
Você usa um destino externo quando precisa sobrescrever os padrões do sistema de mensagens, as configurações de segurança, ou ambos, para um destino individual em um barramento externo. Você define um destino externo no barramento local. Quando um aplicativo que está conectado ao barramento local envia mensagens para o destino no barramento externo, os atributos do destino externo substituem os valores-padrão do destino. É possível configurar propriedades e funções de destino, mas não é possível mapear para um nome alternativo do destino.
Você usa um destino de alias quando precisa usar um nome alternativo para um destino de barramento. O destino do barramento pode estar no barramento local ou em um barramento externo. Você configura um destino de alias no barramento local. Quando um aplicativo no barramento local usa o destino de alias, os nomes do barramento e do destino especificados são mapeados para um novo nome. Se você usar um destino de alias, também poderá configurar propriedades, funções de destino, ou ambos.
Quando um aplicativo que está conectado a um barramento especifica um nome de destino e um nome de barramento em seu objeto de destino JMS (fila ou tópico) que correspondem ao identificador e ao barramento de um destino de alias que está definido nesse barramento, o destino que o aplicativo acessa será o mesmo, como se o aplicativo especificasse o identificador de destino e o barramento de destino a partir do destino de alias. Também é possível usar um destino de alias que está definido em um barramento externo se você precisar redirecionar mensagens que chegam por meio de uma conexão de barramento externo para destinos ou barramentos denominados de formas diferentes e não for possível modificar a configuração do barramento de origem.
Destinos Externos
Um destino externo representa um destino que foi definido em outro barramento (um barramento externo). É possível usar um destino externo para o sistema de mensagens ponto a ponto. É possível usar um destino externo caso seja necessário sobrescrever as configurações de segurança ou os padrões de mensagens, para um destino individual em um barramento externo. O barramento externo pode ser outro barramento de integração de serviços ou uma rede do IBM MQ (ou seja, um ou mais gerenciadores de filas ou grupos de filas compartilhadas interconectados do IBM MQ).
Para substituir padrões do sistema de mensagens em um barramento externo, configure as propriedades (por exemplo a prioridade padrão) do destino externo. Para substituir as configurações de segurança e controlar quais usuários e grupos no barramento local possuem acesso a um destino em um barramento externo, você configura as funções de destino do destino externo. Essas propriedades se aplicam quando um aplicativo conectado ao barramento local envia mensagens para o destino em um barramento externo.
Ao definir um destino externo, use os nomes reais do barramento externo e o destino no barramento externo, para que o objeto de destino JMS não seja alterado.
Quando um aplicativo que está conectado ao barramento local envia mensagens para o destino no barramento externo, a integração de serviço no barramento local usa as propriedades e as funções de destino do destino externo, em vez dos valores-padrão da definição do barramento externo (no barramento local). Geralmente, você configura as propriedades de um destino externo para que correspondam às propriedades que estão configuradas para esse destino no barramento externo (em que esse destino é um destino local), mas isto não é essencial.
Também é possível configurar as funções de destino para o destino externo. A integração de serviços no barramento local usa essas funções para controlar quais usuários e grupos no barramento local possuem acesso ao destino. Ela também complementa qualquer controle de acesso que o barramento externo aplica.
Os destinos externos não são usados para o sistema de mensagens de publicação/assinatura. Em vez disso, os aplicativos publicam as mensagens localmente usando um destino de espaço de tópico no barramento local, e você configura um link do barramento de integração de serviços ou um link do WebSphere MQ. Esses links propagam as mensagens publicadas no barramento ou barramentos externos, em que os assinantes recebem as mensagens. Para um link para um barramento de integração de serviços, configure os mapeamentos de espaço do tópico, conforme descrito em Configurando Mapeamentos de Espaços de Tópicos Entre Barramentos de Integração de Serviço. Para um link para uma rede do WebSphere MQ, configure uma ponte de publicação/assinatura, conforme descrito em Publicar/assinar o sistema de mensagens por meio de um link da IBM.
A integração de serviço não pode usar as informações de configuração com escopo definido para um barramento externo. Portanto, se um destino externo apropriado não estiver definido no barramento local, a integração de serviço usará valores-padrão para os atributos de destino.
A Figura 1 mostra um aplicativo JMS que envia mensagens a partir do barramento local, Barramento 1, para um destino em um barramento externo, Barramento 2. O Barramento 1 possui uma conexão de barramento externo definida, que é usada para encaminhar a mensagem para o barramento externo. O destino externo não é definido no barramento local. O Barramento 1 obtém os padrões de destino da conexão do barramento externo.

A Figura 2 mostra um aplicativo JMS que envia mensagens a partir do barramento local, Barramento 1, para um destino em um barramento externo, Barramento 2. O Barramento 1 possui uma conexão de barramento externo definida, que é usada para encaminhar a mensagem para o barramento externo. O Barramento 1 inclui uma definição de destino externo. O Barramento 1 obtém os padrões de destino do destino externo.

Destinos de Alias
Um destino do alias mapeia um nome alternativo para um destino do barramento. É possível usar um destino de alias para um sistema de mensagens ponto a ponto ou sistema de mensagens de publicação/assinatura. Um destino de alias mapeia um nome de barramento e um nome de destino (identificador) para um destino em que o nome do barramento, ou o nome do destino, ou ambos, sejam diferentes. Um destino de alias pode mapear um destino de fila para um destino do espaço de tópico. Se necessário, os destinos do alias podem ser encadeados de forma que a meta de destino seja em si um destino de alias.
- É necessário interoperar com o WebSphere MQ, mas alguns nomes de barramento ou
nomes de destino de integração de serviços não são compatíveis com as restrições de nomenclatura do IBM MQ
(por exemplo, os nomes são muito longos). É possível definir um destino de alias
que mapeie um nome compatível com o IBM MQ
para o nome de integração de serviço.
Por exemplo, um aplicativo envia uma mensagem para um aplicativo do IBM MQ e o nome do destino de resposta não é compatível com as restrições de nomenclatura do IBM MQ. É possível definir um alias que mapeie um nome compatível para o nome de destino de resposta real. O aplicativo especifica então o destino de alias como a resposta.
Outro exemplo é um aplicativo que envia uma mensagem por meio de um barramento externo do IBM MQ para um barramento externo de integração de serviço remoto quando o nome de destino de envio não é compatível com as restrições de nomenclatura do IBM MQ. É possível definir um alias no barramento remoto que mapeie um nome compatível para o nome de destino de envio real. O aplicativo especifica então o destino de alias como o envio. Para que o aplicativo de envio use o nome de destino real, é possível definir um alias no barramento local que mapeie o nome de destino real para o nome compatível.
- Se você mover um destino de um barramento para outro (excluindo-o
e criando-o em outro barramento), poderá criar um destino de alias
que redirecione mensagens do destino antigo para o novo. Você
deve criar o destino de alias em cada barramento em que os aplicativos
fizerem referência ao destino, por exemplo, o barramento do qual o destino
é movido, e o barramento para o qual o destino é movido.
No entanto, pode ser mais simples alterar os destinos JMS que são registrados com o JNDI para que apontem para o novo destino.
- É possível designar um destino de alias para um subconjunto de pontos de fila de um destino de fila particionado e, portanto, usar o destino de alias para restringir os pontos de fila que os aplicativos de produção e consumo utilizam.
Ao usar um destino de alias, você também pode configurar propriedades (por exemplo, a qualidade de serviço padrão) para o destino do alias. Quando um aplicativo usa o destino do alias, essas propriedades substituem as propriedades da meta de destino . Se não desejar substituir uma propriedade, configure o destino de alias para herdar a propriedade correspondente da determinação de destino.
Ao usar um destino de alias, é possível também configurar funções de destino para o destino do alias. Quando o aplicativo utiliza o destino do alias, a integração de serviços no barramento local usa essas funções para controlar quais usuários e grupos no barramento local devem acessar a meta de destino. Se não desejar substituir a segurança da determinação de destino, configure o destino de alias para delegar a verificação de autorização para a determinação de destino.
A Figura 3 mostra um aplicativo JMS que envia mensagens a partir do barramento local, Barramento 1, para um destino em um barramento externo, Barramento 2. O Barramento 1 possui uma conexão de barramento externo definida, que é usada para encaminhar a mensagem para o barramento externo. O destino JMS não aponta para a fila de destino, mas aponta para o Barramento X, Fila Y. O Barramento 1 inclui um destino de alias que mapeia o Barramento X, Fila Y para a determinação de destino, Barramento 2, Fila 2. O Barramento 1 obtém os padrões de destino do destino de alias.

Usando um destino de alias para um destino em um barramento externo
Se um aplicativo usar um destino de alias para acessar um destino que está definido em um barramento externo, você poderá configurar o destino do alias com as propriedades, as funções de destino específicas, ou ambas, que o aplicativo exigir. Isso significa que, provavelmente, não será necessário definir um destino externo também.