跳转到内容

.NET Remoting

维基百科,自由的百科全书

这是本页的一个历史版本,由小朱留言 | 贡献2008年9月30日 (二) 15:26编辑。这可能和当前版本存在着巨大的差异。

.NET Remoting 是微軟 .NET Framework 中的一種網路通訊技術,與 XML Web Service 不同的是,它可以使用 SOAP 以外的協定來通訊,而在伺服端和用戶端之間所操作的方法近乎相同,用戶端可以不必考慮使用的協定,即可存取伺服端所開放的物件。這個技術與是由Distributed COM所發展而來的,與DCOM最大的不同是,DCOM有限制使用 TCP Port,但.NET Remoting 可以選擇使用 TCP 或 HTTP 的方式通訊,而資料可以利用 SOAP 或二進位傳輸方式在網路上流動,二進位的傳輸效能是 SOAP 所不能比的,但 SOAP 卻可以得到和 Web Service 相互溝通的能力,因此 .NET Remoting 的設計彈性較大。

.NET Remoting 技術目前已整合到 Windows Communication Foundation 中。

原理

.NET Remoting 架構

.NET Remoting 使用了 ChannelSerialization 機制來串接兩台機器間的物件,Channel 是負責處理網路通訊的部份,而 Serialization 則是處理物件與串流資料的處理工作。

.NET Remoting 的設計理念,就是為了要簡化網路上的物件通訊,而且要讓開發人員不必太過於在通訊的底層傷腦筋,因此在網路通訊協定上做了許多的包裝,並且允許在 Configuration File (app.config) 中直接設定,或是由 .NET Remoting 的 Configuration API 來設定即可,故組態設定的選項複雜度較高,設計較複雜的 .NET Remoting 應用程式在組態的設定上往往會相當複雜。