欢迎来到天天文库
浏览记录
ID:27786103
大小:51.00 KB
页数:5页
时间:2018-12-06
《基于.net remoting技术构建分布式数据库查询》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于.NETRemoting技术构建分布式数据库查询摘要.Remoting作为D的替代,得到了日趋广泛的应用。文中通过一个分布式数据库查询系统的解决方案,探讨了Remoting技术的应用,同时也说明了使用该技术可以非常便捷地构建分布式应用程序。关键字Remoting,应用程序域,远程对象,分布式数据库,ADO.0引言 随着传统的数据库、计算机网络和数字通信技术的快速发展,以数据分布存储和分布处理为主要特征的分布式数据库系统的研究和开发越来越受到人们的关注。微软提供了两种解决方案来为用户实现数据服务,即
2、.Remoting和oting技术则是在.环境下,在应用程序内部或应用程序域之间传输数据的方案,它有几种通道可以在数据传输中使用,选择适当的通道同样可以达到穿越防火墙。然而,在一个封闭的网络环境中,选择TCP通道将获得更好的连接性能,这种情况下,无疑.Remoting具有明显的优势。1Remoting框架简介 .Remoting提供了一种允许对象通过应用程序域与另一对象进行交互的框架。这种框架提供了多种服务,包括激活和生存期支持,以及负责与远程应用程序进行消息传输的通讯通道。而且,.Remoting是
3、一个内容丰富的、可扩展的框架,它使得分布在不同应用程序域(AppDomain)、不同进程和不同计算机上的对象可以实现无缝通信。它提供的编程模型和运行时支持,功能强大且非常便捷,能够实现透明的交互。2理解Remoting框架2.1基本原理图1.Remoting体系结构图 .Remoting中通过通道(channel)来实现两个应用程序域之间的对象通信。Remoting的通道主要有两种:Tcp和Http。在.中,System.Runtime.Remoting.Channel中定义了IChannel接口。I
4、Channel接口包括了TcpChannel通道类型和Http通道类型。它们分别对应Remoting通道的这两种类型。通道对象代表了到远程应用程序的连接。每个通道对象还包含格式化程序对象,将方法调用转换为已知格式的消息。 其基本原理如图1所示,首先,客户端通过通道访问服务器端对象,以获得服务器端对象的代理。服务器端对象也即通常所说的远程对象,使用时是通过跨应用程序边界传递对象引用获得该远程对象的代理。对于客户程序来说,代理提供了与远程对象完全一样的方法和属性。当代理的方法别调用时,就会创建消息,通过使
5、用格式化程序类,将这些消息串行化并发送到客户通道中。客户通道和服务器通道进行通信,以通过网络传输消息。服务器通道则使用格式化程序并行化消息,从而将方法发送给远程对象。通过代理,客户端应用程序就可以像使用本地对象一样来操作远程对象。2.2应用程序域 .marshalByRefObject类,访问远程类型的一个对象实例之前,必须通过一个名为Activation的进程进行创建并初始化。这种客户端通过通道来创建远程对象的行为称为远程对象的激活。在Remoting中,远程对象的激活分为两大类: ●服务器端激活
6、:又称为.runtime.remoting><application><service><ode="SingleCall"type="DbServerLibrary.DbServer,DbServerLibrary"objectUri="DbServer"/></service><channels><channelref="tcp"port="8888"/></channels></application&g
7、t;</system.runtime.remoting></configuration> 如果是客户端激活模式,则把ode属性。然后,只需要使用下面一行代码就可以发布远程对象: RemotingConfiguration.Configure("DbServer.exe.config"); 同样,客户端也可以使用配置文件来获得对远程对象的引用,在使用上述一行代码后,只需要简单使用neoting为用户提供了非常灵活便捷的方式来发布和获取远程对象,同时提供了方便的部署应用程序方案
8、。3.系统的实现及相关技术3.1分布式数据库 分布式数据库是一组逻辑上属同一系统,但物理上分布在计算机网络的不同结点的结构化数据的集合。与集中式数据库相比它有如下主要优点:可解决组织机构分散而数据需要相互联系的问题;均衡负载——可避免临界瓶颈;可靠性高——个别场地发生故障,不致引起整个系统的瘫痪;可扩充性好——可在对当前机构影响最小的情况下进行扩充。 分布式数据库中的核心问题就是如何来确定数据在计算机网络中各个场地的分配方案,包括数据的
此文档下载收益归作者所有