3. Divert e Splitting de Mensagem
• Overview
– Diverts são mecanismos que permite o roteamento de
mensagens de uma fila para outra sem que haja
mudanças na lógica das aplicações cliente.
– Os diverts são classificados em dois tipos:
• Exclusivo
– As mensagens são “movidas” para uma outra fila ou
tópico.
• Não Exclusivo
– Uma cópia de cada mensagem é feita em uma outra fila
ou tópico e a original é mantida na fila.
4. Divert e Splitting de Mensagem
• Overview
– Diverts são aplicados a filas ou tópicos que estão no
mesmo servidor.
– Caso haja a necessidade de encaminhar uma mensagem a
uma fila em outro servidor, será necessário utilizar a
técnica de bridge.
– Os diverts suportam um parâmetro opcional de filtro, onde
apenas as mensagens que coincidirem serão desviadas.
– Diverts e Bridge são conceitos sofisticados que quando
combinados podem ser utilizados para criação de
estruturas complexas de roteamento entre servidores
geograficamente distribuídos.
5. Divert e Splitting de Mensagem
• Configuração
– A configuração do Divert consiste em:
• hornetq-configuration.xml
– Configuração dos parâmetros referente aos diverts.
• hornetq-jms.xml
– Criação das fila ou tópicos utilizados pelos diverts.
6. Divert e Splitting de Mensagem
• Configuração
– hornetq-configuration.xml
Nome único do divert
dentro do arquivo.
Fila de entrada.
Se true é
exclusivo, do
contrário não
exclusivo.
Parâmetro de
filtragem das
mensagens.
Fila ou Tópico para
onde a mensagem
será roteada.
Os parâmetros utilizados nos filtro são de responsabilidade das aplicações e ficam contidos
dentro das propriedades da mensagem.
7. Divert e Splitting de Mensagem
• Configuração
– hornetq-configuration.xml
Fila onde será
recebida todas as
mensagens.
Fila para onde será
roteada as mensagens
do filtro
“destino=‘tim’”
Fila para onde será
roteada as mensagens
do filtro
“destino=‘carsystem’”
8. Divert e Splitting de Mensagem
• Configuração
– Exemplo do código na aplicação cliente
Nome da
propriedade
Valor da propriedade