范文广,黄存东
(安徽国防科技职业学院,安徽 六安 237011)
随着计算机的发展,特别是软件技术的开发,对开发人员的开发效率要求越来越高,而传统的开发工具和技术存在较大的限制,.NET是专门为程序员设计,具有很强大的功能,在此平台上开发应用程序将变的非常容易。.NET Framework[1]是.NET的精髓,在.NET Framework中所创建的对象不可避免地将同其他主机上的对象通信,在此过程体系结构中都要通过Remoting来实现。
在.NET Framework中,对象与对象之间或进程与进程之间相互通信[2]的方式是Remoting。在调用系统服务提供的方法时,不能把所有的服务导入应用程序且运行它的一个方法,而是通过调用请求,按照一定的规则插入正在运行的进程,这样才能使对象的运行保持安全、有效。
进程之间的通信是由多种线程模型和调度机制来完成,在分布式应用中,进程边界问题会大量增加,通过向应用服务器调度一个线程时,必须遵守一定的规则获得对象的访问权,同时按照一定的方式包装对象以便传送。在.NET[3]中,对于边界问题的处理通过应用程序域去实现,通过.NET Remoting提供的服务会使不同应用程序域中的对象相互交互和通信。通信选项的设置可以在配置文件中进行控制,一般可以选用TCP/IP、HTTP或其他任何一种传输协议;选用XML/SOAP或其他通用的串行化格式;可以通过服务器或客户机激活对象。
通道是一种消息传输机制,是通过设置一定的协议和格式实现远程应用程序与.NET Framework之间对话,是通道接收器的集合,又称之为接收器链,它为信息的传送和接收提供特殊的协议。……