[技术回顾系列]--认识WebService全貌

我们为什么要使用WebService?

1:WebService的最大优点就是实现异构平台间的互通。
这也是使用WebService的主要原因之一。这样任何两个应用程序,只要他们能读写XML,就能相互通信。
2:更广泛的软件复用。
我们可以采用任何语言在任何平台下把一组功能包装成WebService,然后注册到UDDI。用户只要得到了描述WebService的WSDL文件,就可以用代理工具自动产生合适的客户端代理,就可以通过代理访问WebService提供的功能了。
3:更强大的通信能力
WebService可用基于XML的SOAP来表示数据和调用请求,并且通过HTTP协议来传输这些XML格式的数据,因为此时的调用请求和回应消息是可以穿过防火墙的,一般来说都只有80端口是开放的。具资料显示在WebService之前实现的一些所谓的分布式组件技术是采用二进制来表示的,还需要通过特殊的端口来通信。明显当遇到防火墙时就会失败。

WebService适合什么样的场景?

1:在电子商务行业中应用如把某些通用的逻辑包装起来,供其他公司使用。
2:应用集成(对大型企业实施SOA有神圣的作用)

WebService中应用了那些主要的协议?

SOAP:是一个基于XML的协议,与DCOM,CORBA相比确实简单
下面描述整个WebService的调用过程:
客户端发出请求WebService方法,此时客户端将调用WebService方法的参数进行序列化到服务端后执行反序列化将从客户端得到的参数还原,传递给WebService的方法进行调用,待调用完毕,如果有返回值则将返回值再次进行序列化然后发送到客户端,此时再反序列化得到真正的返回值。整个调用结束。在这个过程中我们可以做很多事情,如对SOAP进行扩展,以及提高WebService的安全性等方面的控制。
WSDL:描述WebService的文档
UDDI :一种发布WebService的场所
DISCO :Discovery of web WebService 和UDDI差不多。

WebService使用在什么地方?

应该是不受限制,只要能识别SOAP消息就可以使用,在以XML为标准的今天这个已经不是什么问题了。
1:浏览器执行WebService。如通过HTTP-GET或HTTP-POST方式执行WebService,不过这种方式比较麻烦,一般不考虑使用。
2:应用在。NET开发中,最简单,都自动化了。
3:应用在不是。NET的环境中。如某些工具专门提供了访问WebService的客户端工具。

待续...

你可能感兴趣的:(service)