Protegendo um aplicativo MDB de problemas de recursos do sistema

É possível configurar o sistema para que, se existir um problema com um recurso do sistema externo dependente, o aplicativo corporativo será parado antes que as mensagens sejam movidas desnecessariamente para um destino da exceção. Esta configuração também manipula problemas ocasionais com as mensagens sem bloquear o aplicativo corporativo.

Antes de Iniciar

Esta tarefa assume que você implementou um aplicativo corporativo que contém um bean acionado por mensagens (MDB) que interage com recursos do sistema externo.

O destino no qual o MDB atende deve usar um destino de exceção. Este destino da exceção pode ser o padrão do sistema ou um configurado especificamente para o destino.

Para concluir estas tarefas, são necessárias as seguintes informações:
  • O aplicativo corporativo que contém o MDB.
  • Os recursos do sistema externo dependentes.
  • Um valor aceitável para o Limite de mensagem com falha sequencial, ou seja, o número máximo de falhas seqüenciais de entrega de mensagens, após as quais o MDB é parado. Esta propriedade aplica-se aos conjuntos de mensagens.
  • Um valor aceitável para o Atraso entre novas tentativas de mensagem com falha, ou seja, o tempo em milissegundos antes que uma mensagem de falha seja disponibilizada para ser entregue ao MDB. Outras mensagens podem ser entregues durante esse período, a não ser que o Limite de mensagem com falha sequencial e a simultaneidade máxima sejam configurados como 1.
  • Um valor aceitável para o Máximo de entregas com falha por mensagem, ou seja, o número máximo de tentativas com falha para processar uma mensagem, após as quais a mensagem é redirecionada de seu destino planejado para o destino de exceção. Esta propriedade se aplica a mensagens individuais.

Sobre Esta Tarefa

Quando um MDB falha em processar uma mensagem, a mensagem é recuperada e disponibilizada novamente para o MDB. Geralmente, o sistema de mensagens é configurado de uma das seguintes maneiras:
  1. Tenta-se novamente um número finito de vezes e, se as mensagens com falha continuarem a falhar, são movidas para um destino da exceção permitindo que mensagens subsequentes sejam processadas.
  2. As mensagens com falha são tentadas novamente indefinidamente até que o problema seja corrigido.

A configuração (1) protege o MDB de uma mensagem de problema ocasional que evita que mensagens subsequentes sejam processadas. Entretanto, se houver um problema prolongado com um recurso do qual o aplicativo corporativo ou aplicativo em nível de negócios depende, por exemplo, um banco de dados, todas as mensagens enviadas ao destino poderão ser movidas para o destino da exceção.

A configuração (2) bloqueia a entrega de mensagens até que o problema de mensagem com falha original seja resolvido. Esta configuração evita que mensagens sejam movidas desnecessariamente para um destino da exceção, mas também bloqueia mensagens subsequentes assim que o processamento de uma única mensagem de problema falhar.

É possível configurar a especificação de ativação para um MDB, de forma que o terminal MDB seja parado automaticamente quando um número de falhas com mensagens sequenciais for detectado. Essas falhas indicam um problema com um recurso dependente. Quando o problema é resolvido, o terminal MDB é reiniciado manualmente. Esta configuração tolera falhas de mensagens ocasionais, permitindo que mensagens de problemas individuais sejam movidas para o destino de exceção sem bloquear o MDB inteiro.

Use as seguintes etapas para proteger um aplicativo corporativo contra falhas de recurso do sistema externo dependente.

Procedimento

  1. Vá para o aplicativo corporativo que contém o MDB.
  2. A partir do MDB, navegue até sua especificação de ativação do JMS. Clique em Recursos -> JMS -> Especificações de ativação -> activation_specification_name.
  3. Digite um valor para o Limite de mensagem com falha sequencial e o Atraso entre novas tentativas de mensagem com falha.
  4. Salve a configuração.
  5. Navegue até o destino no qual o MDB está atendendo. Clique em um dos caminhos a seguir, conforme apropriado:
    • Integração de serviços -> Barramentos -> bus_name -> [Recursos de destino] Destinos -> queue_name
    • Integração de serviços -> Barramentos -> bus_name -> [Recursos de destino] Destinos -> topic_space_name
  6. Digite um valor para o Máximo de entregas com falha por mensagem.
  7. Salve suas alterações na configuração principal.

Resultados

Você configurou o aplicativo corporativo, ou aplicativo em nível de negócios, para proteger-se do tipo de problema de recurso externo que ocorrer a qualquer momento. Isto significa que, no evento de um problema de recurso do sistema, o MDB é parado automaticamente quando o Limite de mensagem com falha sequencial é alcançado para qualquer mensagem.

O que Fazer Depois

Quando o recurso do sistema que falhou for disponibilizado, você poderá reiniciar o recurso do sistema e retomar o MDB. As mensagens que falharam durante o tempo de inatividade do recurso do sistema serão tentadas novamente em vez de serem deixadas em um destino de exceção.

Ícone que indica o tipo de tópico Tópico de Tarefa



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