基于.Net平台的WCF技术探究

来源 :硅谷 | 被引量 : 0次 | 上传用户:wskwugxk
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:介绍WCF的技术背景,以及WCF技术的重要性和优势。并研究使用WCF的技术要素,各要素的具体含义及各自之间的关系。从而帮助大家清晰思路,更好的理解和应用WCF技术在项目开发实践中。
  关键词: WCF;SOA;远程访问
  中图分类号:TP311 文献标识码:A 文章编号:1671-7597(2011)0820029-01
  
  WCF是Windows Communication Foundation的缩写,是微软为SOA(Service Oriented Architecture面向服务架构)而设计的一套完整的分布式应用程序技术框架。它的一切都是关于服务的。是关于服务的创建,寄宿,消耗及安全的一项技术。它具有标准和互操作性。
  什么是SOA?SOA是一种松耦合并且具有统一接口定义方式的Service
  组合构建起来的。它是一种面向企业级服务的系统架构。对于企业来说,业务是会随时变动的,需要系统满足尽可能大的灵活性来满足业务变更快速的需求,有效地进行相应调整,并且利用业务变更来得到竞争优势的能力。所以创建一个业务灵活的架构意味着创建一个可以满足当前还未知的业务需求的IT架构。利用WCF的灵活性,把业务层封装发布为Web Service。这样可以降低系统的耦合度,加大对未知业务的扩展性。
  WCF提供了现有ASP.NET Web Service,.Net Remoting,Message Queu
  ing,和Enterprise Services技术的全部功能。它可以跨进程,跨机器,跨子网,企业网乃至Internet。它可以以ASP.NET,EXE,WPF,Windows Forms,COM+等作为Host(宿主)。它可以支持的协议包括TCP,HTTP,跨进程以及自定义。
  在我们了解它如何工作之前,我们需要知道为什么WCF如此重要?简单地说,因为服务是整个分布式网络的核心,WCF是在微软平台上创建,消耗服务的简单方便的方法。利用WCF,开发人员可以只关注他们自己的应用程序,而不是通信原理等细节。这是典型的技术封装工具化的一个例子。合并在Visual Studio 2008的WCF正是如此。
  现在的应用程序架构里总会把设备,客户端软件,和服务算在内。毫无疑问,1995年网站概念产生时候的模式(在web服务器上寄宿一个应用程序,然后通过HTML传送UI界面到任何浏览器)将继续,但新的模式(合并本地软件和WEB服务)将变得更加常见。
  例如:XBOX360,RSS,AJAX,SharePoint及3D场景,这些都将它们各自的软件和Web服务绑定。开发人员用Visual Studio建立.NET应用程序。WCF和Visual Studio把实现服务工具化。
  总之,WCF之所以有意义,是因为当今的应用程序都和服务相关,服务正是WCF关注的一切。
  作为和服务一起工作的综合技术,WCF有一些重要的术语,我们需要首先熟悉的。在大多数情况下,这些术语并不一定代表新的概念,但是他们提供了一致的规范让我们用它们来研究WCF技术。
  从核心讲,一个服务是一些endpoint(终结点)的集合,用来对客户端提供有用的功能。一个endpoint是网络上可以接收message(消息)的一个资源。客户端通过发消息到endpoint来访问服务,并且根据客户端和服务端之间约定好的契约,把消息进行格式化。服务端监听endpoint上设置地址发来的相应格式化好的消息。如下图:
  对于客户端与服务端进行有用消息的通信,我们需要了解著名的ABCs:address(地址),binding(绑定),contract(契约)。
  Address,就是“哪里”。它定义了消息需要被客户端发送到网络上的哪里,也就是地址,以便endpoint接收到。对于HTTP,地址可以象http://ServerName/ServiceName;对于TCP,它可能是这样的:net.
  tcp://ServerName:PortName/ServiceName。
  Binding,就是“如何”。它定义了用于和一个endpoint通信的channel(通道)。channel是在一个WCF应用程序中所有消息需要经过的管道。一个channel有一系列的binding elements(元素)组成。binding的最低一级element是transport,它在网络上传递消息。内建的transport包括HTTP,TCP,NamedPipes,PerChannel和MSMQ。再上一层的binding elements是相应的security和transactions。幸运的是,WCF拥有系统提供的binding,是已经正确配置的,以节省开发人员的时间。例如basicHttpBinding是符合WS-I BP1.1的规范。wsHttpBinding实现通用的WS-*协议,以启用安全可靠的消息。
  Contract,就是“什么”。它定义了endpoint提供的功能集。contract定义一个endpoint暴露出的Operations(操作),和operations
  所需要的消息格式。Contract operations映射了类的方法,包括方法的输入输出参数。
  一个服务端的endpoint是不能响应消息的,直到这个服务被寄宿在运行的操作系统的进程中。Host(宿主)可以是任何进程,一个WEB服务器,或者一个全屏或最小化的一个客户端应用程序。
  服务有很多behaviors(行为)用来控制他们的并发性,安全性,线程等。Behaviors可以用.NET的Attribute(属性),操作WCF runtime,或者通过配置实现。
  对于创新性,一个服务可能包含一个基本的endpoint,叫做Metadata Exchange(MEX)endpoint。这个endpoint是可以让客户端访问,以取得这个服务的ABCs,并且返回WEB服务表述语言(WSDL)。当你点Visual Studio2008里的“Add Service Reference”时,或者使用svcutil.exe工具的时候,MEX endpoint会被调用。在取到WSDL之后,会产生两个东西:一个代理类,和一个app.config文件。这个代理类可以让客户端的代码很方便的调用一个endpoint.app.config文件包含了binding的相应信息。
其他文献
摘 要: 提出运用CC-Link网络解决多台电动机的控制系统的方案,阐述触摸屏、主站、远程站的结构组成及相关程序的设计,实现多台联网自动运行。该设计系统结构简单,远程控制方便,有较强的扩展性,在生产实际中有较大的借鉴意义。  关键词: PLC;触摸屏;CC-Link网络;多电机组  中图分类号:TP273.5 文献标识码:A 文章编号:1671-7597(2011)0820019-02   
药物试验是诊断疾病的一个重要辅助方法。因其方法简易,诊断可靠,没有明显副作用,故为临床广泛应用。但有关这方面的报道不多,且乏专题系统论述。据此,本文报告有关诊断心血
摘 要: 介绍CC-Link的概况及其网络控制方法,利用网络对从站PLC和变频器的控制给出实例。  关键词: CC-Link;PLC;变频器;网络控制  中图分类号:TP273 文献标识码:A 文章编号:1671-7597(2011)0820021-01    1 CC-Link概况  CC-Link(Control&Communication Link)总线是三菱电机于1996年推出的开放
一、英语语感培养对提高中学生学习效果的重要性语感是一个人对某种语言的一种丰富而敏锐的感知,是对语言直接自由的感觉。一个人的良好语感既来自于语言实践,又指导着语言实
在中国经济反复震荡的现在,大家普遍认为,短期内中国经济没有硬着陆的风险。同时,随着一些地方房价的下跌,很多房地产企业,尤其是中小型房地产公司将面临巨大的压力,不可能再进行信用扩张。相关房地产资金回流到实体经济,而实体经济无法容纳如此大量的资金,因此融资成本将会下行,这对实体经济有利。加之下半年国企改革的预期,市场对体制变化有更多的期待,因此大盘股没有太多的下行空间,可能有估值修复的机会。当然,也要
(一)桃细菌性穿孔病。此病主要危害叶片,枝梢和果实也易感病,受害植株叶片穿孔,嫩梢产生病斑,最后导致提早落叶,枝梢枯死。防治方法:秋冬季剪除病枯枝,清理病落叶,并集中销毁
请下载后查看,本文暂不支持在线获取查看简介。 Please download to view, this article does not support online access to view profile.
摘 要: 变频调速技术在能源节约中发挥着重要作用,简单介绍变频器的发展和国内外研究状况,以及变频调速技术在实际应用中所采用方式。  关键词: 节能;电力电子;变频调速  中图分类号:TP273.+5 文献标识码:A 文章编号:1671-7597(2011)0820033-01    0 引言  随着社会的发展,能源需求快速增长,如何有效地节能也成为了一个亟待解决的问题。变频调速技术除了可以改
随着电子现象技术的完善以及人们欣赏水平的逐步提高,使得对视频图像的清晰度也就是分辨率的要求提高。根据前人的不断研究发现,通过观测模型的改进、图像超高配准、超分辨率的重建等相应的步骤与方法能够达到提高分辨率的目的。在这基础至少系统的总结这一技术的发展与应用,为今后的研究提供理论基础。
本文通过对荣华二采区10
期刊