WCF(Windows Communication foundation)是微软的统一网络通信开发的技术,不管底层用.Net Remoting仍是WebService仍是Restful仍是MSMQ等,只要修改配置文件便可。因此WCF并非新技术。
WCF和.Net Remoting、WebService等技术的关系就像ADO.Net和SQLServer、Oracle驱动的关系同样。经过VS的“WCF服务配置编辑器”简化配置,修改不一样的协议。
一开始内网运行就行,后来想运行到公网,那么若是一开始用.net remoting写后来改为WebService仍是有工做量的,由于写法不同,可是用WCF就不同了。
新建“WCF服务库”,WCF服务库能够Host在IIS上、单独的WinForm程序等。
WCF、.Net Remoting和WebService的关系: .Net Remoting是普通的TCP通信,适合于局域网,效率高; WebService是基于Http协议,适合于广域网,效率低;WCF是对.Net Remoting、 WebService等的简化、统一,能够经过配置来切换不一样的底层实现,代码几乎不用动。html
几个技术名词介绍:web
remoting 用于跨进程通信的。http://www.cnblogs.com/JiYF/p/6113751.html服务器
MSMQ 全称MicroSoft Message Queue,微软消息队列,是在多个不一样的应用之间实现相互通讯的一种异步传输模式,相互通讯的应用能够分布于同一台机器上,也能够分布于相连的网络空间中的任一位置。它的实现原理是:消息的发送者把本身想要发送的信息放入一个容器中(咱们称之为Message),而后把它保存至一个系统公用空间的消息队列(Message Queue)中;本地或者是异地的消息接收程序再从该队列中取出发给它的消息进行处理。http://www.cnblogs.com/tenghoo/archive/2009/11/05/1596456.html网络
几个问题:app
webservice和.net remoting都是用来通讯的框架,它们最大的优势是能够像调用本地对象同样调用远程对象框架
区别:
一、webservice是用的应用层协议http封装的,因此它能够被不少其它语言调用,不少语言也都实现了webservice代理端封装以及工具,只要知道webservice的地址(好比:http://www.baidu.com/SomeService.asmx),就能够用,因此webservice的点特是好用、通用、效率通常;
.net remoting是用传输层协议tcp封装的,因此能够以二进制传输数据,效率高;.net remoting基于.net的反射机制,只方便.net使用(其它语言反射机制实现不一样,有的根本没有反射);
二、webservice能穿越防火墙,是由于http协议是如今普遍应用的协议,防火墙通常不会做屏蔽,并不说webservice有某功能穿越防火墙;
三、 只能在winform下用吗?
若是你是用.net开发,任何类型的应用程序均可以使用webservice和.net remoting,包括winform,asp.net, wpf, silverlight...,只要能using ...就能够按它们的方式用了
1).net Remoting 的工做原理是什么?
答:服务器端向客户端发送一个进程编号,一个程序域编号,以肯定对象的位置。
2) 使用ASMX的XML Web服务与使用SOAP的.NET Remoting的区别?
Web服务使用的消息机制,而Remoting采用的RPC. Web Service能用于不一样平台,不一样语言,Remoting只适用于.Net。效率上Remoting高于Xml Web Service
3)简要谈一下您对微软.NET 构架下remoting和webservice两项技术的理解以及实际中的应用。
答:WS主要是可利用HTTP,穿透防火墙。而Remoting能够利用TCP/IP,二进制传送提升效率。
4).概述.NET里对 remoting 和 webservice 两项技术的理解和实际中的应用。
远程逻辑调用,remoing接口只能用在.net
remoting是.net 中用来跨越machine, process, appdomain 进行方法调用的技术,对于三成结构的程序,就可使用remoting技术来构建.它是分布应用的基础技术.至关于之前的DCOM
Web Service是一种构建应用程序的普通模型,并能在全部支持internet网通信的操做系统上实施。Web Service令基于组件的开发和web的结合达到最佳,基于组件的对象模型asp.net
几种通信服务方式的区别讲解 http://www.cnblogs.com/zuiyirenjian/p/3323578.htmldom