支持C#的RPC

RPC(Remote Procedure Call)----远程过程调用,它是一种通过网络从远程计算机程序上请求服务,

而不需要了解底层网络技术的协议。

RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。

web service:

Web Service:严格来说是行业标准,也就是Web Service 规范,也称作WS-*规范,既不是框架,也不是技术。

ASP.NET Web Service:微软提供了Web服务的开发框架,属于ASP.NET Framework的一部分,但是支持早起的WS规范。

比如SOAP1.1。

wcf:

WCF 是一个分布式应用的开发框架,属于特定的技术,或者平台。既不是标准也不是规范。

WCF其实一定程度上就是ASP.NET Web Service,因为它支持Web Service的行业标准和核心协议,

因此ASP.NET Web Service和WSE能做的事情,它几乎都能胜任,跨平台和语言更不是问题

thrift:

thrift是一种可伸缩的跨语言服务的软件框架。它拥有功能强大的代码生成引擎,无缝地支持C++,C#,Java,

Python和PHP和Ruby。

.net Remoting:

.net Remoting 是在DCOM等基础上发展起来的一种技术,它的主要目的是实现跨平台、跨语言、

穿透企业防火墙,这也是他的基本特点,

它支持HTTP以及TCP信道,而且它不仅能传输XML格式的SOAP包,也可以传输传统意义上的二进制流,这使得它变得效率更高

也更加灵活。而且它不依赖于IIS.

所以从这些方面上来讲WebService其实上是.net Remoting的一种特例。

从微软的产品角度来看,可以说Remoting就是DCOM(分布式组件对象模型,分布式组件对象模式)的一种升级,

它改善了很多功能,并极好的融合到.Net平台下。

Remoting的通道主要有两种:Tcp和Http。以及不常用的IPC通道。

HttpWebRequest

这是微软自带的远程http调用库

HttpClient

这是微软自带的异步远程http调用库