首页 > 代码库 > WCF--初识
WCF--初识
WCFwindows communication fundation 对于这个名词也许你很陌生,也许你很熟悉,但是我想告诉你它一直在我们身边。
还记得我们敲机房系统的时候创建项目吗?还记的学习设计模式的时候创建的项目吗?甚至说为某项功能敲的小Dome那你有没有发现WCF呢,也许你发现了,也许你没有发现,而我就是未发现者。看看下面这张图片,你能不能找到它?
相信聪明的你这次很容易的就在这个窗口中发现了WCF的踪影。
我一直在想一个问题,它就在那里我却不自知。记得师哥面试的时候,面试官曾经问过他,关于WCF的知识,那个时候哪里知道WCF听都没有听说过。其实它就在我们的身边,只是我们缺乏发现美的眼睛而已。
今天呢,颖杰就将WCF这项技术介绍给大家,说技术也许说框架更合理一些。
一 什么是WCF?
WCF是基于windows平台下开发和部署服务的软件开发包。它为服务提供了运行时的环境。它是.net framework 的一个重要组成部分。它集成了.net remoting、web 服务、wse以及MSMQ的所有的特性使开发者能够以统一的方式开发面向服务的应用程序。它微软准对企业级的应用的重要产品。WCF的最终目标是通过进程或不同的系统、通过本地网络或是通过Internet收发客户和服务之间的消息。它使得开发者能够建立一个跨平台、可信赖、事务性的解决方案。且能与已有系统兼容协作。
看了上面的解释也许你要点乱乱的,什么remoting 、什么MSMQ,这些也许你都没有听说过, 没关系今天这篇文章将介绍WCF,后面的文章我们将陆续介绍他们之间的不同。
相信大家都有网上购物的经历,打开淘宝、京东、天猫,选择自己需要的object。鞋子要37码的,衣服要均码的,白色的等等。只要点击了付款,交钱之后只要等着快递叔叔的电话或短信就可以了。这个时候其实就是我们享受了网上购物的服务。它让我们足不出户,体味世间万物。我想说其实WCF就是为服务提供了运行时的环境,就像现在的网上购物的环境一样。客户端只要配置,就可以享受服务。
二 托管
1 IIS托管
2 WAS托管
3 自托管
三 绑定
服务之间的通信方式是多种多样的,有多种可能的通信模式。包括:同步请求/应答消息、双向消息、即时消息、持久队列。消息的传递协议也有很多种:http、tcp、P2P、IPC、MSMQ。消息的编码格式包括:保证互操作性的纯文本编码格式、优化性能的二进制编码格式、提供有效负载的MTOM编码格式。对于消息的安全保障也有多种 策略。对于服务之间的通信还需要一些其他的很多纷繁复杂的属性需要设置。
为了简化操作,易于管理,WCF引入了绑定技术将这些通信特征组合在一起。一个绑定封装了诸如传输协议、消息编码、通信模式、可靠性、安全性、事务传播以及互操作性能等相关选项的集合。理想状态下,我们希望从设置繁杂服务代码中解放出来,而把主要工作集中在业务逻辑的实现方面。
WCF为我们提供了各种绑定,当然我们也可以自行调整绑定的属性,也可以不采用提供的绑定,自己定制。WCF为我们提供了9中标准绑定:基本、TCP、对等网、IPC、web服务、WS联邦绑定、WS双向绑定、MSMQ绑定、MSMQ集中绑定。关于具体的这些绑定呢,以后的文章将具体介绍。
WCF中为什么要有绑定呢?
个人觉得它是为了在客户端与服务端进行消息的传递。就像我们从一个地方到另一个目的地。我们有多种可选择的交通工具。根据我们自己的需要,选择适合自己的交通工具。WCF的绑定其实就是为通信选择设置交通工具。
四 契约
总结:
PS: 看到一句话觉得很有霸气,和大家分享:
以WCF为基础框架搭建面向服务的企业级应用程序,以WF工作流引擎支撑企业应用中业务流程的传递与控制,以Cardspace和WCF固有的安全策略保证企业信息的安全,最后以asp.net AJAX、wpf和silverlight技术丰富界面的绚丽表现,从而改善企业客户对应用程序的体验,这就是微软实现企业级用用的霸业宏图。WCF在其中的地位举足轻重。
微软在用它的技术有条不紊的实现着它即定的宏伟蓝图,而我却对上面的很多技术都不熟悉,可见消息之闭塞,我在想:那通过什么途径才能让我们了解更多的现在技术的发展趋势呢,也许看博客、实时关注行业最新动态是最快最有效的途径吧。
这些都是自己对WCF暂时见解,欢迎各位指正。
WCF--初识