当前位置:首页 > 工作总结 > 【Microsoft,.Net,Remoting,技术的应用研究】 上海应用技术大学是几本
 

【Microsoft,.Net,Remoting,技术的应用研究】 上海应用技术大学是几本

发布时间:2019-02-21 03:54:16 影响了:

  摘要:.Net Remoting远程处理为进程间通信提供了一种抽象的方法,它将可远程处理的对象与特定客户端或服务器应用程序域以及特定的通信机制隔离开来。远程处理系统假定没有特别的应用程序模型。可以从 Web 应用程序、控制台应用程序、Windows 服务,即差不多可以从希望使用的任何程序中进行通信。
  关键词:分布式系统.Net Remoting通信机制
  
  1 引言
   随着网络技术的飞速发展,推动了分布式技术的飞跃发展。很多分布式技术应运而生,如DCOM,COM+,JAVA RMI ,CORBA 等等。这些技术有不同的计算机公司和组织提供,有各自的标准和实现技术,多使用基于Remote Procedure Call的形式进行通信,都有其独特的技术特点,但也存在不同的技术缺陷。当今的分布式技术应当具有高效,可靠,可扩展,可与其他不同技术协同工作。Microsoft . Net Framework 为创建和扩展通过远程对象进行交互的分布式应用程序提供了灵活的模型;.Net Remoting是一种全新的设计,它提供了具有可扩展性的连贯对象模型,以支持迄今为止开发人员使用DCOM建立的各种系统。并且其提供了与传统技术之间空前的互操作性。
  
  2 .Net Remoting概述
   .Net Remoting 体系结构是一种扩展的.Net组件的基础结构,它可以为组件提供全部所需以调用远程组件,不用考虑它们是否在不同过程中,不同机器上,甚至在不同网络上。只要有一条网络路径可以连接这些组件,.Net Remoting体系结构被设计得可以支持组件间的无缝连接,而把连接的细节抽象成一系列组件类型。建立和维护这些组件之间的线路连接的细节用“通道(Channel)”来概括。被称为格式器(formatter)的组件获取方法调用中的参数并使之串行化为合适的格式用以在连接上传送。简而言之,.Net Remoting体系结构就是一种基于组件的良好的体系结构,它可以支持远程调用。这种体系结构使用一批内置的组件迅捷地建立通信通道,格式化消息,在连接上移动消息,确保消息已发送,给参数编组和其他很多细节。当客户机访问远程对象的时候,客户端就会建立一个代理,代理的创建和管理都是完全自动和隐藏的。代理转发对远程对象的调用,看起来该对象就像是在本地一样。.Net Remoting对象很适合通过网络访问资源,而又无需处理由基于SOAP 的Web Service 所带来的难题。对于内部网应用程序而言,Web服务器和SOAP 协议的使用并不是总有效的。当传输的数据的量很大时,DCOM协议系统开销就太大了。在过去开发人员通常使用DCOM编写程序。有了DCOM,我们习惯于调用均等在服务器上的对象的方法,.Net Remoting 就是DCOM的替代者。与DCOM 相比,.Net Remoting 也可以在Internet 解决方案中。在Internet 解决方案中,DCOM显得不太灵活和效率不高。.Net Remoting不需要创建存根程序和骨架文件,使用起来比Java 的RMI 简单而且为处理局域网甚至互联网范围内的资源提供了一个绝佳的方法,使用范围比JAVA 的RMI 更广泛。使用. Net Remoting 框架技术可以匹配和扩展体系结构的每一个部分,不仅增加了它的灵活性,也大大扩展了它的应用范围。.Net Remoting几乎适合于所有涉及远程的工作。
  3 . NET Remoting 的工作方式
   客户端应用程序对远程对象方法的调用过程:
   (1)首先会被远程对象在客户端的代理对象接收到,有代理对象创建相应的消息。(2)然后通过使用格式化程序将这些消息序列化为可以在网络上传输的格式,并将这些消息发送到客户端通道中。(3)客户端通道会和服务器端通道进行通信,通过网络传输有关客户端调用服务器端对象方法的消息。(4)服务器端通道接收到该消息后,将它交给格式户程序,有格式化程序从消息中提取出方法调用的信息并提交给实际的远程对象。(5)通过一个相反的过程,服务器端对象将对客户端应用程序调用的相应放入到一个消息中返回。(6)客户端的代理类接收到该消息后将结果返回给客户端应用程序。
  
  4 小结.Net Remoting 的优点
   通过上述的分析与研究,可以看出.Net Remoting技术具有很强的灵活性和扩展性,同时用此技术构建分布式应用会简单得多。而且.Net Remoting可以继承IIS 的安全性,也可以通过它的可扩展性来根据需要自定义安全通道来对在.Net Remoting组件间传递的消息进行加密(既加密通道),同时可以定制代理来满足具体的应用需要。因为应用程序域隐藏了进程具体的操作系统信息,所以可以运行在许多不同的操作系统上。进程中运行在不同域中的应用程序不能直接共享全局数据,静态数据或其他资源,所以即使某一个应用程序域失败了,它也不会影响到同一进程中的其他应用程序域。对于不需要昂贵的IPC机制的进程来说,应用程序域允许.Net运行库优化运行在进程中的应用程序间的通信。
  
  参考文献
   [1] 王�,李燕.使用Microsoft Visual C#开发XML Web Services 和Server Components 北京希望电子出版社.
  [2] 袁月杨,麻丽莉.SOA&Web2.0――新商业语言,清华大学出版社.
本文为全文原貌 未安装PDF浏览器用户请先下载安装 原版全文

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3