【IT168 技术文档】
一、什么是Web Service?
Web Service是构建互联网分布式系统的基本部件。Web Services 正成为企业应用集成(Enterprise Application Integration)的有效平台。你可以使用互联网中提供的Web Service构建应用程序,而不必考虑这些Web Service是怎样运行的。
二、Web Service 三个基本技术
Web Service通过标准通信协议,在互联网上发布有用的程序模块(以服务的方式),目前大部分是用SOAP来作通信协议。
Web Service提供一份详细的接口说明书,来帮助用户构建应用程序,这个接口说明书叫作WSDL(Web Service Description Language)。
通常已发布的Web Service要注册到管理服务器,这样便于使用者查询和使用。这个是通过UDDI(Universal Discovery Description and Integration)来完成的。
三、为什么要用Web Service?
Web Servcie最主要的优点是,使用不同程序和在不同系统平台上开发出来的程序,都可以相互通信。现在很多人在问:“不是CORBA和DCE也有那些优点吗?跟它们有什么不同呢?”。第一个不同点是,SOAP作为Web Service的基本通信协议,比它们简单地多,所以投入和使用的代价也是小的。现在不仅有很多大公司发布的Web Service,也有个人发布的。另一个不同点是,Web Service使用标准的互联网协议-XML、HTTP和TCP/IP。很多公司已经从实践当中对这些协议积累了丰富的经验,所以相比CORBA和DCE 要交的学费要少地多。
如果把现有的应用程序以Web Service部件形式发布,可以帮助其他的公司(人)构件功能强大的应用程序。举个例子,你要开发一个采购系统,可以自动地获得供应商的报价,而且可以实时追踪送货过程。如果供应商已经发布了报价和送货这两个Web Service,那么你就可以直接使用它们,而不必自己开发这些功能了。
在未来,会出现更有趣的Web Service(现在做不到的),来帮助我们构建应用程序。
四、SOAP
SOAP是Web Service的基本通信协议。因为SOAP与DCOM和CORBA在概念上有相同之处,所以很多人在问:“SOAP是怎样激活对象的?”或“SOAP在使用什么命名服务(Naming Service)?”。或许在执行SOAP的过程当中会用到这些,但这些并不在SOAP规范要考虑的范畴之内。SOAP只是定义SOAP消息的XML格式(XML Format),如果你用一对SOAP标记(SOAP Elements)把XML文档括起来,那么这个就是一个SOAP消息,这不是很简单吗?
SOAP规范还定义了怎样用XML来描述程序数据(Program Data),怎样执行RPC(Remote Procedure Call)。这些可选的规范是为了构建RPC-style的应用程序(客户端SOAP消息包含函数名和在函数中用到的参数,而服务器端SOAP消息包含执行函数之后的结果)。大多数SOAP解决方案都支持RPC-style应用程序,因为很多程序员已对DCOM或CORBA熟悉。SOAP还支持 Document-style应用程序(SOAP消息只包含XML文本信息)。Document-style应用程序有很好的灵活性,所以很多用RPC很难构建的Web Service用这种方式构建。
最后SOAP规范还定义了HTTP消息是怎样传输SOAP消息的。这并不代表SOAP只能用HTTP来作为传输协议,MSMQ、SMTP、TCP/IP都可以做SOAP的传输协议。
很多大公司根据SOAP规范,都开发出了自己的SOAP解决方案。这些解决方案都是相对于某种语言。比如说Microsoft SOAP toolkit2.0把COM函数转换成SOAP消息,而Apache toolkit把JAVA函数转换成SOAP消息。这样难免带来一些兼容性问题。
现在SOAP的很多另人瞩目的特性已成为现实(SOAP已经运行于不同的硬件和软件平台),而且有70多个解决方案。之所以SOAP被人们所爱戴,是因为SOAP比其他同类技术(CORBA、DCE)简单易用。
安全性对于应用程序来说是很重要的。那么SOAP的安全性如何呢?对于把HTTP作为传输协议的SOAP来说是没有问题的,因为HTTP协议已经有很好的安全构架。那么用其他传输协议会出现安全问题吗?不是的,你不必担心,因为已经有这方面的规范了(http://msdn.microsoft.com/librar ... tml/ws-security.asp)。
五、WSDL
WSDL是一种XML文档,它定义SOAP消息和这些消息是怎样交换的。IDL(Interface Description Language)是用于COM和CORBA的,WSDL是用于SOAP的。WSDL是一种XML文档,所以我们可以阅读和编辑,但很多时候是用工具来创建、由程序来阅读。
举个例子,你要使用供应商的Web Service构建应用程序。你可以向供应商索取使用Web Service的范例,然后按照范例来构建应用程序。这样可能出现意料不到的错误,比如说,你在程序中使用的客户代码的数据类型是integer,而供应商使用的数据类型是string.。WSDL详细定义客户端消息的格式,需要什么样的参数,这样可以避免不必要的错误。
六、UDDI
UDDI可以比喻成电话本,电话本里记录的是电话信息,而UDDI记录的是Web Service信息。你可以不把Web Service注册到UDDI。但如果要让全球的人知道你的Web Service,最好还是注册到UDDI。
UDDI目录说明文件也是一个XML文档,它包括三个部分。“白页(White Paper)”说明提供Web Service的公司(人)信息,比如说名称、地址和联系方式等等。“黄页(Yellow Paper)”说明UDDI目录的分类,比如说金融、服务和印刷等等。“绿页(green Paper)”说明接口(Web Service 提供的)的详细信息。
UDDI提供多种查询方式,来帮助你找到需要的Web Service。如果你查询与财务有关的Web Service,那么UDDI会提供详细的信息。
分享到:
相关推荐
【ITPUB程序开发版电子杂志第一期】深入解析 ITPUB程序开发版电子杂志首刊,聚焦Java和PHP编程领域,旨在为开发者提供学习和进阶的指引。本期内容涵盖Java学习路径、PHP5的新特性,以及jc20031010的精彩学习笔记。...
ItPub社区电子杂志是一款专为IT专业人士打造的资源丰富的学习平台,它提供了大量关于信息技术的中文清晰版内容,旨在帮助读者深入理解各种IT技术、工具和趋势。这个电子杂志覆盖了编程语言、操作系统、数据库管理、...
itpub论坛网站的 iOS手机客户端。
Oracle软件权限修复-lhrbest-ITPUB博客.mhtmlOracle软件权限修复-lhrbest-ITPUB博客.mhtml
美河提供.ITPUB.Oracle数据库DBA专题技术精
itpub电子杂志-12
### ITPUB电子期刊第19期知识点梳理 #### 一、个人成长与发展 ##### 1. **我的职业生涯(By piner)** - **背景介绍**:文章讲述了piner从一个高考成绩平平,在一所普通本科院校学习建筑工程专业的学生转变为一名...
"itpub Oracle 高级性能优化"的主题涵盖了Oracle数据库在处理复杂业务场景时如何提升运行效率、降低响应时间、减少资源消耗等关键问题。Itpub作为国内知名的IT技术社区,提供的这个专题资源很可能包含了一系列深入的...
根据提供的信息,我们可以详细地解析出以下几个核心知识点: ### 1. ODS (Operational Data Store) 概念 **定义**: ODS 是一个面向主题的、集成的、可变的、当前的细节数据集合,它主要用于支持企业对于即时性的、...
Oracle技术大会ITPUB文档集合是一份非常宝贵的资源,它涵盖了Oracle数据库系统、数据库管理、性能优化、数据安全、云计算等多个关键领域的专业知识。这个压缩包中的文档可能包括会议演讲稿、技术论文、案例研究和...
### IT技术要点解析:ITPUB电子期刊第十三期概览 #### 一、核心内容概览 **标题**:“ITPUB电子期刊第十三期” - **关键词**:ITPUB, Oracle, 电子期刊 - **主要内容**:本期刊主要围绕Oracle数据库及其相关技术和...
ITPUB电子杂志是IT行业内的知名资源,涵盖了丰富的技术文章和专业知识,尤其在数据库领域,如Oracle,具有很高的权威性。以下是对标题、描述和标签的详细解读及相关知识点的阐述: 标题:“ITPUB电子杂志第1。。9期...
ITPUB电子杂志是针对IT专业人士,特别是关注数据库领域的读者发布的一系列专业出版物,直至第十二期,其主要聚焦于ORACLE这个全球知名的数据库管理系统。ORACLE作为企业级数据库解决方案的代表,拥有广泛的应用场景...
### ITPUB电子期刊第十七期:聚焦Oracle数据库11g新特性 #### Oracle数据库11g概述 Oracle数据库11g是Oracle公司推出的全新一代数据库管理系统,它不仅继承了Oracle数据库系列的强大功能,还引入了一系列重要的...
《ITPUB的ORACLE专题深入讨论》是一个深入解析Oracle数据库技术的专业资源,它涵盖了Oracle在企业级数据管理中的各种核心概念、最佳实践和技术难点。作为数据库管理员、开发人员或IT专业人士,理解并掌握这些知识将...
### ITPUB SAP方丈作品集知识点概览 #### CO第一夜-成本要素会计 **1. 成本要素会计概念** 成本要素会计是SAP CO(Cost Controlling)模块的一个重要组成部分,它主要关注企业内部的成本计算和分析。 **1.1 初级...