Este tópico é 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.
Quando utilizar um padrão síncrono de pedido/resposta, a mensagem de pedido será enviada utilizando um nó MQOutput e a resposta será recebida de maneira seqüencial com um nó MQGet.
Um fluxo, como este no diagrama simplificado a seguir, permite a conversão sincronizada de SOAP sobre HTTP para SOAP sobre JMS:
O fluxo precedente fornece um mecanismo simples para implementar a conversão sincronizada de HTTP para SOAP sobre JMS no qual cada pedido de entrada HTTP é totalmente processado e respondido antes de mover para o próximo pedido HTTP. Para evitar a falha do serviço SOAP sobre JMS, configure um tempo limite no nó MQGet. Uma vantagem deste modelo de fluxo é que toda a conversão de pedido/resposta é manipulada em uma única transação, permitindo uma recuperação simples.
Este fluxo síncrono pode não ser apropriado nos casos em que o processamento de SOAP sobre JMS é de execução longa, porque o processamento de outros pedidos de HTTP que chegam não pode ser iniciado até que o pedido atual seja concluído. Neste caso, o Fluxo de Mensagens deve ser projetado de maneira síncrona, com fluxos separados de pedido e resposta, com qualquer contexto de correlação necessário sendo salvo em um meio de armazenamento no fluxo de pedido e restaurado durante o fluxo de resposta. Uma solução é utilizar uma fila para armazenar o contexto de correlação necessário e utilizar um nó MQGet no fluxo de resposta para recuperá-lo. Este design de fluxo permite que pedidos de HTTP sejam despachados para o serviço SOAP sobre JMS conforme são recebidos e as respostas são retornadas ao HTTP na ordem em que foram recebidas. Isto evita, por exemplo, o bloqueio de pedidos de consulta de execução rápida por um pedido de atualização de execução mais longa.
Para obter mais informações sobre o cenário de resposta de pedido assíncrono, consulte Um Cenário de Pedido/Resposta Utilizando um Nó MQGet.