Remoting简介

Remoting技术

 

Microsoft公司的COM最初是为了使同一台机器中的对象到对象的调用更为简
单而设计的。这项目技术使得对象调用更易于代码化,但COM不能实现分布
式应用。Microsoft公司接着发布了DCOM,它使COM对象通过使用授权的
Microsoft通信协议在网上发送请求来调用另一台计算机上的COM对象。
.NET通过一种被称为Remoting的新技术,改进了它原有的DCOM技术。在.NET 
的框架结构中,可以发现Remoting和它的子类在System.Runtime.Remoting
名字空间中。
关于Remoting,最大的优点莫过于采用了开放资源技术,如SOAP(Simple 
Object Access Protocal)和HTTP,实现对象到对象的调用。

 

Remoting客户机和服务器
客户端对象<---->服务器对象,两者之间形成的连接被称为 通道。

 

激活与生存期
启动服务器对象称为 激活(Activation),在这个对象一直保持激活状态的这

段时间称为生存期(Life time). 在Remoting里有3种激活方式,每种方式有

自己的生存期。

3种激活类型:
Single Call
Singleton
Client Activated Object ,CAO

通道(channel)
1.TCP通道: 二进制传输,最为快捷、最为高效的Remoting通道。
2.HTTP通道: 能穿越防火墙到达更远的地方。SOAP是基于xml技术,这意味
  着消息能自我描述封装过程,并能被任何应用程序读取和创建。没有 tcp通道高效。
3.IPC ??

 

接收器、端口、通道注册。
Remoting通信
1.Remoting消息
2.Remoting的数据调度
ByVal,ByRef
3.格式化程序
System.Runtime.Serialzation.Formatter名字空间的

Binary.BinaryFormatter类,若使用HTTP通道方式,格式化程序由Soap.SoapFormatter类衍生而得。
4.Remoting中的代理

Remoting服务器配置
a.从配置文件中读取:System.Runtime.Remoting.RemotingConfiguration类。

 

RemotingConfiguration.Config("remoteserver.cfg");
配置文件:remoteserver.cfg

 

posted @ 2010-07-11 17:13  庚武  Views(310)  Comments(0Edit  收藏  举报