《WebServices体系结构和基础技术.ppt》由会员分享,可在线阅读,更多相关《WebServices体系结构和基础技术.ppt(21页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 Web ServicesWeb Services体系结构体系结构和基础技术和基础技术西源软件培训中心西源软件培训中心回顾uWeb 服务是一种自包含、自解释、模块化的应用程序,它能够在 Web 上发布、定位和调用uWeb 服务结构主要由以下层组成:u数据存储u数据访问 uWeb 服务逻辑uWeb 服务外观u侦听器层uWebMethod 标签通知 ASP.NET 编译器,接下来的方法是一个 Web 方法,它将导出到 Web回顾u服务提供者与服务注册器、服务代理和服务请求者一起组成了 Web 服务中的重要参与者uWeb 服务的优点如下:u交叉业务集成u提高效率u拉近客户关系 u便于及时集成 u创建
2、 Web 服务项目时,VS.NET 会生成以下文件uAssemblyInfo.cs u.asmx 和 .cs uGlobal.asax 和 u.discouWeb.config回顾uUDDI 帮助注册服务提供者提供的服务,以便可以共享uUDDI 业务注册表的目的是整合电子商务站点uWeb 服务发现机制使客户端应用程序能够查找或发现描述 Web 服务的文档u发现文档包含有关其他 Web 服务的信息,此 Web 服务位于同一或另外的 Web 服务器上uWSDL(Web 服务描述语言)是 Microsoft、Ariba 和 IBM 共同努力的结果,是一种描述或描绘 Web 服务的语言 uVS.NET
3、 2003 提供了在 Windows 和 Web 应用程序中使用 Web 服务的简单方法目的u了解了解Web Services体系结构体系结构u了解了解Web Services 协议栈协议栈u了解了解Web Services工作流程工作流程u了解了解Web Services基础技术基础技术web服务体系结构需要达到的要求和目的u要求要求u集成的应用程序资源应该采用松耦合的模式集成的应用程序资源应该采用松耦合的模式u互操作的通信应该采用互操作的通信应该采用 Internet 的标准的标准u应用程序服务接口需要公开发布,并且接口的定义应用程序服务接口需要公开发布,并且接口的定义和相关文档应该易于访
4、问和相关文档应该易于访问u目的目的u除核心应用外的其他软件可以使用外包形式除核心应用外的其他软件可以使用外包形式u细化应用程序模块的粒度,以提高可重用性细化应用程序模块的粒度,以提高可重用性u可以通过重用第三方的软件来降低成本和提高开发可以通过重用第三方的软件来降低成本和提高开发效率效率u应用程序可以以服务的形式出售应用程序可以以服务的形式出售体系结构服服务务注册中心注册中心服服务请务请求者求者SOAPSOAPSOAPIIS服务提供者服务提供者体系结构uWeb Services的体系结构基于的体系结构基于W3C组织提出组织提出的面向服务架构(的面向服务架构(Servi-ce Oriented
5、Architecture,SOA)。如上图显示了)。如上图显示了Web Services的体系结构,它包括服务提供者的体系结构,它包括服务提供者(Service Provider)、服务注册中心)、服务注册中心(Service Registry Center)和服务请求者)和服务请求者(Service Requestor)三种角色,角色间的)三种角色,角色间的交互涉及发布(交互涉及发布(Publish)、查找()、查找(Find)和)和绑定(绑定(Bind)三种操作。)三种操作。体系结构u服务提供者定义服务提供者定义Web Services的服务描述,的服务描述,并把它发布到服务请求者或服务注
6、册中心;服并把它发布到服务请求者或服务注册中心;服务请求者使用查找操作从本地或服务注册中心务请求者使用查找操作从本地或服务注册中心搜索服务描述,再使用服务描述与请求的搜索服务描述,再使用服务描述与请求的Web Service绑定,实现调用。绑定,实现调用。体系结构u在在Web Services体系架构中除了以上所体系架构中除了以上所述的三种角色和三种操作以外,还包含述的三种角色和三种操作以外,还包含服务(服务(Service)和服务描述()和服务描述(Service Description)两种)两种Web Services构件。构件。前者被部署在前者被部署在Web Services服务器上,
7、服务器上,供服务请求者绑定调用,后者包含服务供服务请求者绑定调用,后者包含服务的接口和实现的细节描述。的接口和实现的细节描述。示例-一个电子货币转账的 Web 服务Internet防火墙防火墙防火墙防火墙防火墙防火墙Contoso MicropaymentWeb 服务服务Woodgrove 银行银行 Web 服服务务Northwind 网上银行网上银行转账转账 Web 服务服务Web 服务消服务消费者费者示例-一个电子货币转账的 Web 服务uWeb 服务的服务提供者u由 ASP.NET 页面来实现,扩展名是.asmxuWeb 服务的服务注册中心uUDDI 提供的目录服务uWeb 服务的服务请
8、求者u采用 SOAP 或 HTTP 协议与服务提供者进行通信,并且支持必要的安全身份验证示例-一个电子货币转账的 Web 服务UDDI用户用户SOAPSOAPSOAPIISWeb 服务服务Web 服务基础结构Web 服务编程uWeb 协议uHTTPuSOAPuXMLu无状态u松耦合u通用数据格式uSOAP 协议基于 XML 格式uWeb 服务描述文件使用 XML 格式u从 Web 服务返回的数据使用 XML 格式u UDDI 注册 Web 服务使用 XML 格式的文档uASP.NET 使用 XML 格式的配置文件Web Services 协议栈u要以一种互操作的方式执行发布,发现和邦定这三个操
9、作,必须有一个包含每一层标准的协议栈Web Services协议栈。uWeb Services协议栈的基础是网络层,Web Services要被服务请求者调用,就必须通过网络访问。因特网上可供访问的Web Services必须使用普遍部署的网络协议,而HTTP凭借其普遍性,成为因特网可用的Web Services真正的标准网络协议。Web Services还可以支持其他因特网协议,包括FTP,SMTP,MQ(消息排队),IIOP(因特网ORB间协议)上的。Web Services 协议栈WSFLLayerLayer服务流程Business IssuesBusiness Issues安全管理服务
10、质量Static-UDDI服务发现Direct-UDDI服务发布WSDL服务描述SOAP基于XML的消息传递HTTP,FTP,Email,MQ,IIOP网络Web Services 协议栈Machine AMachine BInvokeWSDLproxyWSDLstubHTTP+SOAP1Web ServiceUDDI Server4WSDLWSDLWSDL3WSDLrequestresponse1通讯协议通讯协议2消息格式消息格式描述语言描述语言3发现机制发现机制4XML2那给我用用吧那给我用用吧(SOAP)(SOAP)Web Services 工作流程Design-Time or Dyna
11、micDesign-Time or DynamicRuntimeRuntime你都有什么服务啊你都有什么服务啊你都有什么服务啊你都有什么服务啊?(WSDL)?(WSDL)http:/ with service XML with service 描述描述描述描述http:/ BODYXML/SOAP BODYWeb Web ServiServiceceWebWebService Service 客户端客户端客户端客户端UDDIUDDI查找服务查找服务查找服务查找服务http:/www.uddi.orghttp:/www.uddi.org链接到链接到链接到链接到 DISCO DISCO 或者或者或者或者 WSDL WSDL 文档文档文档文档Web Services 技术uXMLuSOAPuWSDLuUDDI总结uWeb Services体系结构体系结构u了解了解Web Services 协议栈协议栈u了解了解Web Services工作流程工作流程uWeb Services基础技术基础技术 XML SOAP WSDL UDDI 后面章节将详细讲解这些技术后面章节将详细讲解这些技术
限制150内