Como configurar fila DLQ

DLQ (Dead-letter queues)

Existem vários motivos que levam uma mensagem a falhar; seja por falha de rede, estrutura ou erros na camada de negócio. O que acontece com uma mensagem que não foi processada?

No Websphere existe uma fila padrão chamada “SYSTEM Exception Destination”, onde todas as mensagens que falham são armazenadas. Este fila não pode ser removida, pois cada BUS deve, obrigatoriamente, manter uma.

Figura 1

Quando uma mensagem não é entregue, independente do motivo, após um número de re-tentativas, ela é encaminhada para uma fila de erro. Este conceito é chamado de DLQ (Dead-letter queues). Como vimos, no Websphere elas irão para a fila padrão chamada “SYSTEM Exception Destination”; caso necessário podemos criar uma fila específica e enviar os erros para ela, ao invés de utilizar a “SYSTEM Exception Destination”. Desta forma podemos escolher uma fila DLQ para cada tipo de falha ou para cada tipo de mensagem.

Configurando uma DLQ no Websphere

1) Primeiro temos que criar um novo destino, que irá receber nossas mensagens que falham. Acesse o seguinte caminho: “Service Integration > Buses” no menu da esquerda:

Figura 2

2) Escolha um BUS e dê um clique em seu nome, neste exemplo o bus é chamado de “teste”:

Figura 3

3) Nas opções à direita clique em “Destination”:

Figura 4

4) Clique no botão “New” e crie um novo destino. Criaremos com o nome de “ERROR”:

Figura 5

5) Escolha a opção “Queue”:

Figura 6

6) O nome para a nossa fila será “ERRO”:

Figura 7

8) Escolha qual o escopo de nossa fila:

Figura 8

9) Este tela é apenas um resumo das configurações:

Figura 9

10) Após a criação, salve as configurações:

Figura 10

11) Feito isto clique novamente no BUS “teste”, e clique na opção “Destination”, repita os passos 2 e 3. Agora clique na fila ao qual se deseja configurar o DLQ (neste caso temos uma fila chamada “QUEUE”), que foi criada em outra ocasião. Na tela que irá surgir, desça até a opção “Specify” no grupo “Exception destination”, no campo de texto coloque o nome do seu destino, que criamos nos passos 4 a 10. Como criamos a destino “ERROR”, será ele que vamos configurar neste ponto:

Figura 11

Salve as configurações:

Figura 12