探讨WCF面向服务变迁过程
创始人
2024-06-17 15:21:45
0

大家通过对WCF的学习,可以体会到其功能的强大性。在这里为大家介绍的WCF面向服务,则是一组公开的功能集合。这里我发表一下个人理解,和大家讨论讨论。#t#

从软件设计的角度考虑,软件设计思想经历了从函数发展到对象,从对象发展到组件,再从组件发展到服务的几次变迁。

在这样一个漫长的发展旅程中,***发展到服务的一步可以说是***革新意义的一次飞跃。WCF面向服务(Service-Orientation,SO)是一组原则的抽象,是创建面向服务应用程序的***实践。如果你不熟悉面向服务的原则,可以参见附录A,它介绍了使用WCF面向服务的概况与目的。

本书假定你对这些原则已经了然于胸。一个WCF面向服务应用程序(SOA)将众多服务聚集到单个逻辑的应用程序中,这就类似于面向组件的应用程序聚合组件,或者面向对象的应用程序聚合对象。

服务可以是本地的,也可以是远程的,可以由多个参与方使用任意技术进行开发。服务与版本无关,甚至可以在不同的时区同时执行。服务内部包含了诸如语言、技术、平台、版本与框架等诸多概念,而服务之间的交互,则只允许指定的通信模式。

服务的客户端只是使用服务功能的一方。理论上讲,客户端可以是任意的Windows窗体类、ASP.NET页面或其他服务。

端与服务通过消息的发送与接收进行交互。消息可以直接在客户端与服务之间进行传递,也可以通过中间方进行传递。WCF中的所有消息均为SOAP消息。注意WCF的消息与传输协议无关,这与Web服务不同。因此,WCF服务可以在不同的协议之间传输,而不仅限于HTTP。

WCF客户端可以与非WCF服务完成互操作,而WCF面向服务也可以与非WCF客户端交互。不过,如果需要同时开发客户端与服务,则创建的应用程序两端都要求支持WCF,这样才能利用WCF的特定优势。

因为服务的创建对于外界而言是不透明的,所以WCF服务通常通过公开元数据(Metadata)的方式描述可用的功能以及服务可能采用的通信方式。元数据的发布可以预先定义,它与具体的技术无关(Technology- Neutral),例如采用基于HTTP-GET方式的WSDL,或者符合元数据交换的行业标准。

一个非WCF客户端可以将元数据作为本地类型导入到本地环境中。相似的,WCF客户端也可以导入非WCF面向服务的元数据,然后以本地CLR类与接口的方式进行调用。

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...