web service 的概述(一)

来源:互联网 发布:python适合初学者的书 编辑:程序博客网 时间:2024/06/06 18:39

第一部分:直观概述

WebService不是框架,更不是一种技术,而是一种跨平台,跨语言的规范。

WebService集中解决:

1.      远程调用。

2.      跨语言调用。

3.      跨平台调用。

WebService几个重要的概念:

1.      SOAP:SOAP是Web Service的基本通信协议。SOAP只是定义SOAP消息的XML格式(XML Format),如果你用一对SOAP标记(SOAPElements)把XML文档括起来,那么这个就是一个SOAP消息. 最后SOAP规范还定义了HTTP消息是怎样传输SOAP消息的。这并不代表SOAP只能用HTTP来作为传输协议,MSMQ、SMTP、TCP/IP都可以做SOAP的传输协议。

2.      WSDL:WSDL是一种XML文档,它定义SOAP消息和这些消息是怎样交换的。

3.      UDDI:UDDI可以比喻成电话本,电话本里记录的是电话信息,而UDDI记录的是Web Service信息。你可以不把Web Service注册到UDDI。但如果要让全球的人知道你的Web

Service,最后还是注册到UUDI。

 

第二部分:基本原理和架构

1. 服务器端 (Provider) 提供统一的标准化服务。就像开办一个公司 ( 即 Server Provider), 工商行政管理局,注册一下公司地址和性质。目的是 , 别人要用公司的服务,从工商管理局就知道你的地址。这样统一的做法,是方便所有的公司以及所有需要公司提供服务的客户。并且这些信息是最大限度的公开。

2. 客户端 (Requester) 到注册中心 (Registry) 拿到公司的基本信息之后 , 去找到这个公司 , 然后使用该公司提供的服务。


1.  Client有需要,想调用一个服务,但不知道哪里去调用但知道UDDI Registry上可以查到。                                                                      

 2. 果然 UDDI 记录了某个一个叫做 Web Server A 的服务器能提供这样的服务。      

3. 于是 Client 去 Web Server A, 询问确切的调用方法。                          

4. Web Server A 看到 Client 提出的“确切方法查询”之后,立即返回给它一个 WSDL 描述的 xml 文档这里记录他能提供的各类方法接口 .                                

 5. Client了解到这些之后,将这些 xml 的接口方法,封装成为 HTTP 请求,发给 Web Server A. 这些封装方式采用的是标准的SOAP方式,实质是满足HTTP协议的一些SOAP的报文消息。

6. Web Server A回应的也是HTTP协议的SOAP包.这样双方的请求-响应完全畅通。

0 0
原创粉丝点击