SOAP sobre JMS Utilizando o Nó MQGet

Esta é uma visão geral da implementação de um serviço da Web SOAP/JMS utilizando o nó MQGet e descreve os custos e benefícios desta abordagem.

Ao utilizar um padrão de pedido-resposta síncrono, a mensagem de pedido seria enviada utilizando um nó MQOutput e a resposta seria, então, recebida de forma seqüencial com um nó MQGet.

Um fluxo como o que acompanha o diagrama simplificado permitiria conversão síncrona de SOAP sobre HTTP para SOAP sobre JMS:

O diagrama mostra um fluxo que consiste nos seguintes nós da esquerda para a direita, a saída de cada um vai para a entrada do seguinte: HTTPInput, Compute 1, MQOutput, MQGet, Compute 2, HTTPReply.

O fluxo acima fornece um mecanismo simples para implementar uma conversão síncrona de HTTP para SOAP sobre JMS em que cada pedido HTTP recebido é processado completamente e respondido antes de ir para o seguinte. Uma falha do serviço SOAP sobre JMS seria manipulada pela configuração de um tempo limite no nó MQGet. Outra vantagem desse modelo de fluxo é que a conversão completa de pedido-resposta é manipulada em uma única transação, permitindo um rollback e recuperação simples.

Esse fluxo síncrono pode não ser apropriado em casos em que o processamento SOAP sobre JMS pode estar em execução há muito tempo, já que o processamento de outros pedidos HTTP que chegam não será iniciado até o pedido atual ser concluído. Nesses casos, o Fluxo de Mensagens seria melhor projetado de forma assíncrona, com fluxos de pedido e resposta separados, com qualquer contexto de correlação requerido sendo salvo em um meio de armazenamento no fluxo de pedido e restaurado durante o fluxo de resposta. Uma solução possível é utilizar uma fila para armazenar o contexto de correlação requerido e utilizar um nó MQGet no fluxo de resposta para recuperá-lo. O design desse fluxo permite que os pedidos HTTP passem por dispatch para o serviço SOAP sobre JMS, à medida que são recebidos e respostas entregues de volta a HTTP na ordem de recebimento. Isso impediria, por exemplo, o bloqueio de pedidos de consulta de execução rápida por um pedido de atualização de execução mais longa.

O cenário de pedido-resposta assíncrono é descrito em Utilizando um Nó MQGet em um Fluxo de Pedido/resposta.

O cenário de pedido-resposta assíncrono também é detalhado na amostra Amostra Coordinated Request Reply , que poderia ser adaptada para uso do Serviço da Web.

Outro cenário de serviços da Web é descrito na amostra: Amostra Web Service Host.

Conceitos relacionados
Visão Geral de Fluxos de Mensagens
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback
Direitos Autorais IBM Corporation 1999, 2006 Última Atualização: 1 Sep 2006
ac34660_