浅析XML Web服务实现异步通讯

时间:2022-10-01 08:28:58

浅析XML Web服务实现异步通讯

摘要:在网络中实现通讯是用户经常使用的功能,在中主要有两种实现通讯的方式,可以采用xml web服务实现同步和异步通讯。本文描述两者的区别并列举异步通讯的主要实现方法。

关键词:XML WEB服务 同步通讯 异步通讯

中图分类号:TP311 文献标识码:A 文章编号:1007-9416(2012)11-0168-01

1、XML Web服务比较

我们的XML Web服务客户端应用程序已经调用了XML Web服务方法并等待相应,阻塞应用程序的处理直到Web方法返回,这种方式被称为同步通讯,是消费XML Web服务时应用的最普遍也最容易理解的方式。不过,有时候您可能想让您的客户端应用程序在等待XML Web服务的相应时继续处理其他任务或让应用程序许用户交互。异步通讯将允许您调用XML Web服务方法并立即向应用程序返回的内容。您的应用程序可以自由地承担其他任务,包括发出更多的异步请求,然后在异步操作完成后回来处理XML Web服务的响应,图1和图2对同步和异步通信做了一番比较,并显示了在通信流程上的不同之处。

在图1中,客户端在继续处理操作前必须等待XML Web服务的响应。

图1 同步通讯流程示意图

使用异步通讯时,客户端不必等待XML Web服务的响应,客户可以处理其他任务并且发起另外的异步请求,然后回来处理XML Web服务的响应。

图2 异步通讯流程示意图

异步通讯是一个强大的工具,他能够让你更好地控制应用程序的执行,不过,如果没有必要的时候,应该避免使用异步通讯。异步通讯将使您的应用程序复杂化并且难以调试。此外,异步请求不一定按照他们被提交的顺序返回。这种行为允许您的应用程序不安顺序执行操作;如果使用不当,异步请求将使您的应用程序出现异常行为,并且使用户无法适从。

2、异步XML Web服务的实现

与XML Web服务的异步通讯所必要的功能可以在客户端完全实现。您不必采取特别的行动使您的XML Web服务支持异步通讯。因此,我们目前开发的XML Web服务都能够使用使用异步通信的客户。

步骤一、在WEB Service后台代码文件的顶部插入一条语句,导入System.Threading命名空间,导入这个命名空间可以让代码访问Thread类。

3、结语

在本文中利用.NET框架,使用简单的数行代码就可以实现中XML WEB服务的异步通讯的编写。在应用程序开发中可以任意的调用该服务完成异步通讯。

参考文献

[1]孙更新,肖冰,彭玉忠.XML编程与应用教程.北京:清华大学出版社,2010.5.

[2]汪青青.Web服务器编程.北京:清华大学出版社,2004.9.

上一篇:基于Struts和Hibernate毕业设计管理系统的设计... 下一篇:电力调度综合数据平台的标准化设计与实现探析