RPC(Remote Procedure Call)----遠程過程調用,它是一種經過網絡從遠程計算機程序上請求服務,
而不須要了解底層網絡技術的協議。
RPC採用客戶機/服務器模式。請求程序就是一個客戶機,而服務提供程序就是一個服務器。web
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調用庫spa
HttpClient.net
這是微軟自帶的異步遠程http調用庫對象