5月24日学习体会

来源:互联网 发布:apache rewrite是什么 编辑:程序博客网 时间:2024/04/29 07:01
 
这几天,抽空看了一下Web Services的一些资料,感觉收获不小,对于Web Services也有了较深的理解。下面把我对Web Services的理解贴出来,大家来共同讨论一下。
 
    目前,随着Web应用的发展之迅速,B/S架构的Web应用也慢慢的暴露出来不少问题,最大的一个问题就是:很多Web服务都是为专门的应用而设计的,如果要将这些服务整合起来,就显得比较困难了。也就是说,各种Web服务之间缺少交互和通讯机制。
 
    Web Services则是为解决这个问题而专门提出的。它是通过制定的一系列标准和协议来保证程序之间的通信。最基本的协议有:SOAP , WSDL , UDDI。
 
    SOAP:是“Simple Object Access Protocol”的缩写,它是传递消息的协议。规定了Web服务之间是如何传递通讯信息的。
    WSDL:是“Web Services Description Language”的缩写.意如其名,WSDL是Web Services的定义语言。通俗的说,如果我们定义了一个服务,需要让其他人调用,我们必须告诉其他人服务的名称,接口,参数等信息。
    UDDI: 是Universal Description, Discovery, and Integration的缩写。简单说,UDDI用于集中存放和查找WSDL描述文件,起着目录服务器的作用。
 
    有了Web Services的这些协议,我们就可以来描述一个基本的Web Services的运作流程:
(1) 实现一个Web Services,使其能够接受和响应SOAP消息;
(2) 撰写一个WSDL文件用于描述此Web Services;
(3) 将此WSDL发布到UDDI上;
(4) 其他的应用程序(客户端)从UDDI上搜索到你的WSDL;
(5) 根据你的WSDL,客户端可以编写程序调用你的Web Services.
 
(为了便于理解,我用实际生活中的例子来描述)
    我们定义A为一家餐馆,它的功能在于为顾客提供餐饮服务。从这里,我们可以找到Web Services最基本的模型:
(1) 假设A提供一道菜:番茄炒鸡蛋,它可以说是A所提供的一个服务。
(2) 服务员将这道菜的名称,价格等相关信息放在菜单上(这里,我们的菜单就相当于UDDI了);
(3) 顾客B进来,从菜单上可以找到A所提供的点菜信息,这样B就可以选择性的点菜。也就是说,B可以调用A所提供的服务。
 
这就是Web Services的基本模型。我们可以明显的看出,这种模型具有很多的优点。最关键的一点就是客户端不用去关心服务提供者的服务是如何来实现的。
比如说上面的例子中,顾客不需要了解番茄炒蛋是怎么做的,他只需要使用即可。假设有多类服务:酒水,饮料等。它们只需要将名字,价格等信息提供在菜单上就可以了。
 
    Web Services使得不同的服务可以动态查找和定位,相信它的使用,将会改变整个商业运作的模式和信息交流的模式。
原创粉丝点击