Transacionalidade JMS

Os destinos JMS que fornecem mensagens a um nó JMSInput ou recebem mensagens de um nó JMSOutput podem ser coordenados pelo ponto de sincronização como parte de uma transação global do fluxo de mensagens.

Transações Envolvendo o Coordenador do Ponto de Sincronização

Um diagrama que representa o fluxo de mensagens através de um nó JMSOutput, incluindo um Coordenador do Ponto de Sincronização.

Neste diagrama, as mensagens são consumidas de um tópico por um nó JMSInput, e produzidas em uma fila JMS por um nó JMSOutput. Os nós estão conectados e em sessão em um provedor JMS. Qualquer nó de entrada do fluxo de mensagens pode informar o Coordenador do Ponto de Sincronização externo quando uma transação do fluxo de mensagens é iniciada e finalizada e se algum recurso que foi afetado pelo fluxo deve ser confirmado ou recuperado.

O Coordenador de Ponto de Sincronização (sync-point coordinator) envia pedidos compatíveis com XA/Open a todos os gerenciadores de recursos participantes para informar a eles da preparação. Todas as alterações são confirmadas ou revertidas. Gerenciadores de recursos, por exemplo, o WebSphere MQ, o DB2 e qualquer provedor JMS compatível com XA, podem participar de uma transação global.

O Coordenador de Ponto de Sincronização externo é o WebSphere MQ nos sistemas operacionais diferentes do z/OS, e RRS (Resource Recovery Services) no z/OS.

Os nós JMSInput e JMSOutput poderão participar de uma transação global apenas se o provedor JMS ao qual eles estão conectados suportar a interface XA/Open por meio da Classe JMS XAResource. Um provedor JMS de exemplo é o WebSphere MQ Java Client.

Você pode especificar um connection factory genérico (recoverXAQCF) para recuperação de transações coordenadas por XA.

Transações Pendentes

As transações pendentes poderão ocorrer quando um gerenciador de recursos não responder a uma chamada do gerenciador de Ponto de Sincronização, na qual os recursos devem ser confirmados ou revertidos. Durante a inicialização do gerenciador de filas do WebSphere MQ do intermediário, uma etapa de recuperação inicial é realizada para assegurar que quaisquer transações pendentes sejam resolvidas antes que os fluxos de mensagens do intermediário comecem a processar nova entrada. Um provedor JMS que participa das transações globais do intermediário é incluído nessa etapa de recuperação.

Nos sistemas operacionais diferentes de z/OS, WebSphere MQ exige que uma tarefa de administração seja executada antes da implementação. Essa tarefa registra um componente do intermediário, que é uma biblioteca compartilhada, no gerenciador de filas atribuindo a biblioteca compartilhada a um arquivo de chave.

Quando o gerenciador de filas WebSphere MQ do intermediário é inicializado, ele carrega o arquivo de chave. O arquivo de chave redireciona as chamadas de transação XA/Open do Coordenador de Ponto de Sincronização para o Provedor JMS. Isso assegura que os recursos JMS que participam da transação possam ser coordenados em sincronização com outros gerenciadores de recursos envolvidos na mesma transação.

É necessária configuração adicional para ativar o suporte de transação global para os nós JMSInput e JMSOutput; consulte Configurando os Nós JMSInput e JMSOutput para Suporte a Transações Globais.

Tarefas relacionadas
Configurando os Nós JMSInput e JMSOutput para Suporte a Transações Globais
Referências relacionadas
Tipos de Mensagem JMS
Estrutura da Mensagem JMS
Objetos Administrados por JNDI
Nó JMSInput
Nó JMSOutput
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Última atualização : 2009-02-13 16:11:55

ac24879_