利用 WAS V6.1 开发安全可靠的 Web Services,第 2 部分:实现可靠的消息传递
2010-03-26 00:00:00 来源:WEB开发网WS-Reliable Messaging
在 WS-Reliable Messaging v1.0 中收发双方的消息示例流程如下:
首先有发送方 A 发起整个消息序列的建立过程。在 SOAP 报文中,会有 CreateSequence 元素;
收到该消息后,接收方 B 发送消息序列建立回应,在报文中出现 CreateSequenceResponse 元素;
接着发送方发送了 3 条消息,其 MessageNumber 分别为 1,2,3。其中第二条消息丢失了。
当 B 收到消息 1 和 3 后,向 A 回复 SequenceAcknowledgement,并指定
AcknowledgementRange=1,3,这就说明在传输的过程中消息 2 丢失了;
A 重新发送消息 2;
B 收到消息 2 后,发送 SequenceAcknowledgement 并指定 AcknowledgementRange=1…3,这就说明从消息 1 到消息 3 已经全部收到;
最后 A 在收到所有回应消息后,结束消息序列,TerminateSequence。
在 WS-Reliable Messaging v1.1 中,消息可靠传输的机制又有所不同,尤其是针对同步双向的消息传输,使用了 MakeConnection 机制。该机制中,接收方根据 MakeConnection 消息中提供的地址进行回复,但在 WS-ReliableMessaging v1.0 中并不支持该机制。由于本文中使用标准 WS-Reliable Messaging v1.0,因此关于 WS-Reliable Messaging v1.1 的具体内容就不再一一赘述,更多详细信息可以参考在本文最后提供的参考资料。
第一步:配置可靠消息传输的策略集
在 WAS6.1 中可以使用 policy set 的绑定机制来实现服务质量。为了能够使用策略集,需要安装 feature pack for web service 补丁包。启动 WAS6.1 服务器,在控制台上选择服务 -> 策略集 -> 应用策略集,在右边的窗口中将显示出 WAS6.1 中所有的策略集。点击新建一个策略集 testplicy。
更多精彩
赞助商链接