2-NET Remoting体系结构的主要元素

来源:互联网 发布:淘宝 装修 编辑:程序博客网 时间:2024/05/01 03:02

.NET Remoting体系结构的主要元素:

l         远程对象:远程对象是运行在服务器上的对象。客户机不能直接调用远程对象上的方法,而要使用代理。使用.NET,很容易把远程对象和本地对象区分开:即每一个从MarshalByValueObject派生出来的类从来都不会离开它的应用程序域。客户可以通过代理对象调用远程对象的方法。

l         信道:信道用于客户机和服务器之间的通信。信道包括客户机的信道部分和服务器的信道部分。对于.NET Framework而言,有两种信道类型,它们分别通过TCP和HTTP进行通信。此外,还可以创建定制的信道,使用不同的协议通信。

l         消息:消息被发送到信道中。消息是为客户机和服务器之间的通信而创建的。消息包含:远程对象的消息、被调用方法的名称以及所有的参数。

l         格式标识符:格式标识符用于定义消息是如何传输到信道中的。对于.NET Framework而言,有SOAP格式标识符和二进制格式标识符。使用SOAP格式标识符,可以与不是基于.NET Framework的Web服务通信。

l         格式标识符提供程序:格式标识符提供程序用于把格式标识符与信道联系起来。在创建信道时,可以指定要使用的格式标识符提供程序,格式标识符提供程序择定一把数据传输到信道中时所使用的格式标识符。

l         代理对象:客户机调用的是代理对象上的方法,而不是远程对象上的方法。代理对象分为两种:即透明的代理对象和真实的代理对象。在客户的眼中,透明代理对象与客户机的远程对象类似。在透明代理对象上,客户机可以调用由远程对象执行的方法,然后,透明代理对象可以调用真实代理对象上的Invoke()。Invoke()方法使用消息接收器把消息传递给信道。

l         消息接收器:消息接收器是一个截取器(interceptor)对象,简称接收器。在客户机和服务器上都有这样的截取器对象。接收器与信道相联系。真实的代理对象使用消息接收器把消息传递到信道中,因此在消息进入信道之前,接收器可以进行截取工作。根据使用接收器所处的位置,可以把接收器称为特使接收器、服务器环境接收器、对象环境接收器等。

l         激活器:客户机可以使用激活器在服务器上创建远程对象,或者获取一个被服务器激活的对象的代理对象。

l         RemotingConfiguriation类:该类是用于配置远程服务器和客户机的一个实用类。它可以用于读取配置文件或动态地配置远程对象。

l         ChannelServices类:该类是一个实用类,可用于注册信道并把消息分派到信道中。

 

原创粉丝点击