浅析XML Web服务实现异步通讯
摘要:在网络中实现通讯是用户经常使用的功能,在asp中主要有两种实现通讯的方式,可以采用xml web服务实现同步和异步通讯。本文描述两者的区别并列举异步通讯的主要实现方法。
关键词:xml web服务 同步通讯 异步通讯
中图分类号:tp311 文献标识码:a 文章编号:1007-9416(2012)11-0168-01
1、xml web服务比较
我们的xml web服务客户端应用程序已经调用了xml web服务方法并等待相应,阻塞应用程序的处理直到web方法返回,这种方式被称为同步通讯,是消费xml web服务时应用的最普遍也最容易理解的方式。不过,有时候您可能想让您的客户端应用程序在等待调用webservice服务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、结语
在本文中利用框架,使用简单的数行代码就可以实现asp中xml web服务的异步通讯的编写。在应用程序开发中可以任意的调用该服务完成异步通讯。
参考文献
[1]孙更新,肖冰,彭玉忠.xml编程与应用教程.北京:清华大学出版社,2010.5.
[2]汪青青.web服务器编程.北京:清华大学出版社,2004.9.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论