O WebSphere Message Broker suporta
Web Services Reliable Messaging (WS-RM), que permite que dois sistemas troquem mensagens, de forma confiável, entre si.
O exemplo a seguir mostra uma troca de mensagens confiável
típica entre dois sistemas. Essa visão geral conceitual não inclui
todas as mensagens possíveis que poderiam ser enviadas. Por exemplo, mensagens de protocolo
extras podem estar presentes.
As seguintes etapas descrevem a ordem de eventos neste exemplo:
- As condições prévias do protocolo são estabelecidas. Elas incluem troca de políticas, resolução de terminal e estabelecimento de confiança.
- A origem do sistema de mensagens confiável (Origem RM) solicita a criação de uma nova Sequência usando uma solicitação CreateSequence.
- O destino do sistema de mensagens confiável (Destino RM) cria uma Sequência e retorna seu identificador exclusivo.
- A Origem RM começa enviando mensagens na Sequência, começando com a MessageNumber 1. No exemplo mostrado, a Origem RM envia três mensagens na Sequência.
- A segunda mensagem na Sequência, mostrada pelo nome m2, é perdida em trânsito.
- A terceira mensagem é a última da Sequência e a Origem RM inclui um cabeçalho
AckRequested para assegurar que ela receba uma mensagem Sequenceacknowledgment
para a Sequência.
- O Destino RM reconhece o recebimento da mensagem números de 1 a
3 na resposta para receber o cabeçalho AckRequested da Origem RM.
- A Origem RM envia a mensagem não reconhecida com relação ao MessageNumber
2. O transporte subjacente a trata como uma nova mensagem, mas ela possui o mesmo
Identificador de Sequência e MessageNumber para garantir que o Destino RM a trate
como uma duplicata da mensagem anterior. No caso de as mensagens original e duplicata
serem recebidas, o Destino RM entrega apenas uma ao aplicativo de recebimento. A Origem
RM inclui um cabeçalho AckRequested na mensagem retransmitida para que o Destino RM envie
um reconhecimento imediato.
- O Destino RM recebe a mensagem retransmitida com MessageNumber
2 e reconhece o recebimento de mensagens com MessageNumbers 1, 2 e 3.
- A Origem RM recebe esse reconhecimento e envia uma TerminateSequence
para o Destino RM para indicar que a Sequência está completa. A mensagem
TerminateSequence indica que a mensagem com MessageNumber 3 foi a última mensagem da Sequência. O Destino RM pode liberar quaisquer recursos associados à Sequência.
- O Destino RM recebe a mensagem TerminateSequence que indica que a Origem RM não enviará mensagens adicionais. O Destino RM envia uma mensagem TerminateSequenceResponse para a Origem RM.
Use o WS-RM com WS-Security para garantir que você aceite solicitações CreateSequence apenas de origens confiáveis. Para obter informações adicionais, consulte WS-Security.