- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向服务的计算和web数据相关管理第7章 面向服务的体系结构和REST体系结构.ppt
;面向服务的体系结构有不同的风格。 目前的风格包括面向远程方法的风格和面向资源的风格。 面向远程方法是传统的面向服务的计算, 而面向资源是一种新的风格, 它着重于远程方法调用的结果, 而不是调用方法本身。 本章将使用Windows通信基础(WCF)开发用WSDL和SOAP访问远程方法的传统服务, 以及基于面向资源风格的REST型服务。 这种风格也叫做面向资源的体系结构(ROA)或面向资源的计算(ROC)。 ; WCF是最新的、 广泛使用的面向服务的软件开发环境。 一方面, WCF 服务通过实现第6章讨论过的WS-*标准中的可靠性、 安全性、 协作性和事务扩展了ASP .Net服务。 另一方面, WCF支持最新的ROA和基于HTTP服务的开发, 它通过增加与数据和资源相关的服务补充了传统的与动作相关的服务, 以满足Web应用开发的多样化需求。; Windows通信基础(WCF)扩展了ASP.Net以更好地支持面向服务的软件开发,特别是在可靠性和安全性方面。WCF是WinFX的一部分,WinFX是WindowsVista和WindowsServer2008中的新的编程环境,如图7.1所示。WinFX由3个包组成:; ; 如表7.1所示,WCF提供了可以在其他面向服务软件开发环境中使用的特征,这些特征包括:平台无关服务(ASP.Net)、平台相关服务(.Net远程服务)、分布式事务(企业服务,如BizTalk)和Web服务的规范(WSE)。 在第6章,我们已经讨论了分布式事务、WS安全性和WS可靠消息传递。本章我们将讨论平台无关服务(互操作服务)平台相关服务(.Net远程服务)以及REST型服务的开发。WCF提供的综合性特征见表7.1。; 表7.1 WCF提供的综合性特征; 由于降低了接口的复杂性,因此平台相关通信更为有效。WCF提供了多个接口集以适应平台相关和平台无关通信。平台无关通信也有两个主要标准:①用WSDL和SOAP定义服务和通信的接口,包括端口、端口类型、数据类型、消息类型、操作定义和消息格式;②用HTTP通信的REST型服务。本章首先介绍WCF端点中接口的平台无关定义。;一个WCF端点由3个称为ABC(Addressing,Binding,Contract)的实体定义: (1)地址(Addressing):它定义了调用消息应被发送到的网络地址,例如:/uszip.asmx或http://localhost:49187/Service.asmx. 地址格式由一个基地址和可选的URI部分组成,基地址由[传输协议]://[域名][:可选端口]组成,其中,传输协议通常是HTTP;如果服务在开发者服务器上运行,使用可选端口。; (2)绑定(Binding):它指定了客户端和服务端或两个服务端之间的连接通道。该通道有两层: ①底层是传输协议。WCF支持TCP、命名管道、HTTP、HTTPS、MSMQ以及自定义协议; ②上层是绑定策略,如basicHttpBinding和wsHttpBinding。wsHttpBinding提供了通用的WS-*规范,包括WS-安全性,WS-可靠性和WS-事务功能。 (3)契约(Contract):有不同的契约类型,服务契约定义了一个实现接口的类。一个操作契约定义了端点暴露的操作和该操作所要求的消息格式。操作契约映射为实现端点的类中的一个方法。数据契约定义了一个服务操作发送和返回的数据类型,它是一个方法的传入参数和返回值的类型。; 如果契约基于SOAP和WSDL,它定义了标准的Web服务,与平台无关,我们在第3章和第5章讨论过。如果契约基于HTTP的动词,那么服务是REST型服务,这将在后面章节讨论。 图7.2显示了客户端和服务端之间的信息交换。只要它们的ABC匹配,双方就可以通信。 WCF进程可以由服务器托管,如IIS,也可以由Windows托管进程自托管,这消除了对IIS服务器的依赖。 下一节,我们将举例说明如何定义端点并通过端点访问服务。我们也将讨论使用服务器托管服务和自托管服务,还将讨论不需要端点的REST型服务的开发。;; 为了把重点放在创建服务和托管服务的过程上,这个例子中的操作很简单。服务定义了两个操作:返回PI值和计算绝对值。客户将为服务创建一个代理并使用代理访问服务中的操作。; 学习WCF服务开发的最简单的方法是使用Visualstudio给出的WCF模板并使用.Net开发服务器托管服务。具体操作步骤如下: 第1步:新建一个WCFWeb站点项目。 通过选择:文件→新建Web站点…→WCF服务,新建一个Web站点项目。为了更好地仿照这个例子,使用默认的存储位置,但是要改
您可能关注的文档
- 面向对象的Java和 与UML课件Chapter 09The key inputs and outputs of requirements analysis.ppt
- 面向对象的Java和 与UML课件Chapter 11A customer represented in UML.ppt
- 面向对象的Java和 与UML课件Chapter 13The interaction of use cases through objects.ppt
- 面向对象的Java和 与UML课件Chapter 15The basis for modern architectures.ppt
- 面向对象的Java和 与UML课件Chapter 17Primary inputs and outputs to the testing phase.ppt
- 面向对象的Java和 与UML课件Chapter 22Stakeholder summary for the Odd Shoe Company.ppt
- 面向对象的Java和 与UML课件UML概述.ppt
- 面向对象的Java和 与UML课件USE CASE ANALYSIS CASE STUDY.ppt
- 面向对象的Java和 与UML课件数据库和 与面向对象.ppt
- 面向对象的Java和 与UML课件第 8 章业务建模.ppt
文档评论(0)