欢迎来到论文网! 识人者智,自知者明,通过生日认识自己! 生日公历:
网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台。lunwenf@yeah.net。
您当前的位置:首页 > 科技论文 > 计算机论文

基于C++ Builder的多层分布式数据库技术

时间:2015-09-02  作者:班 珂

摘要:C++ Builder 是一个功能齐全的Windows应用程序开发工具,它的应用非常广泛。由于分布式计算技术和Web的迅速发展,数据库应用系统在传统C/S结构的基础上,发展成为新的3层或多层结构。本文主要讲述了如何建立多层分布式数据库系统以及在系统中运用的几个实用的小技巧。
论文关键词:C++Builder,数据库,服务器端,客户端

C++ Builder是一个功能齐全的Windows应用程序开发工具,它的功能很强大,应用范围也非常广泛。而同样地,C++ Builder具有强大的数据库功能,可以开发本地数据库或者分布式数据库系统。

从80年代以来,数据处理模式经历了单层结构,C/S结构(即两层结构),以及现在的n-Tier或Multi-Tier结构,即多层分布式结构。第三种结构是在传统的C/S结构中,增加了应用程序服务器,即三层结构,是多层分布式系统最典型的模式。其各部分的名称和功能如下:

(1)客户端应用程序在用户机器上提供用户界面。

(2)程序服务器位于可连接到所有客户端的中央网络位置,并提供公共的数据服务。

(3)远程数据库服务器提供数据库管理系统(RDBMS)。

客户端

多层数据库分级示意图

分布式数据库系统主要特点:

· 多数处理就地完成;

· 各地的计算机由数据通信网络相联系。

· 克服了中心数据库的弱点:降低了数据传输代价;

· 提高了系统的可靠性,局部系统发生故障,其他部分还可继续工作;

· 各个数据库的位置是透明的,方便系统的扩充;

· 为了协调整个系统的事务活动,事务管理的性能花费高;

2、多层分布式数据库系统的实现工具

MIDAS(Multi-tier Distributed Application Services Suite)即多层分布式应用程序服务包,是Borland公司推出的开发多层结构所需的技术和工具集,集成了多种技术规范的多层分布式数据库解决方案,它具有在客户端无需任何数据库工具可以读取远程数据(仅需一个小的动态连接库Midas.dll)、网络通信量小、多线程、数据库自动约束及平衡负载的特点。

C++ Builder提供了多个MIDAS组件,大致可以分为以下四类:

⑴、远程数据模块

远程数据模块是一个类似于COM Automoation Server或者是CORBA Server的数据模块。它存在于应用程序服务器中。作用是提供应用程序服务器上的数据提供者组件的接口给客户端程序使用。

C++ Builder提供的此类模块有:Remote Data Module、Transactional Data Module 和CORBA Server。

①、 Remote Data Module是一个双重接口的Automation Server,可以供DCOM、HTTP、Windows Sockets 以及OLEnterprise等通讯协议的客户端应用程序使用。

②、 Transactional Data Module也是一个双重接口的Automation Server,如果应用程序服务器的DLL的方式写的,并且将它安装在MTS中,那么它可以在MTS的统一管理之下。该类模块也提供DCOM、HTTP、Windows Sockets 以及OLEnterprise等通讯协议的支持。

③、 CORBA Server允许CORBA客户端应用程序的连接以及数据的存取。

⑵、数据提供者组件

该类组件位于应用程序服务器上,负责将数据集对象从数据库中取出的数据以封包的形式传送给客户端应用程序。C++ Builder提供的该类组件有TDataSetProvider.通常一个远程数据模块包含一个TDataSetProvider。

⑶、客户端连接组件

该类组件通过常位于客户端应用程序中,负责与应用程序服务器取得连接,C++ Builde提供的该类组件有TDCOMConnetion、TsocketConnetion、TwebConnetion以及CORBA Client等等。

⑷、客户端数据集组件

该类组件是客户端应用程序上的数据集组件,是客户端应用程序从应用程序服务器上获取数据的重要组件。属于此类组件的有TClientDataSet与TXMLBroker。

3、多层分布式数据库系统的实现过程

以下介绍建立多层分布式数据库系统的过程以及在系统中运用的几个实用的小技巧。

⑴、建立应用程序服务器

本实例的应用程序服务器所用的远程数据模块是Remote Data Module。步骤:

①、 新建一个工程

②、 选择“File”—>“New”—>“Other”命令,选择“Multitier”选项卡,找到“Remote Data Module”,单击“OK”按钮,为工程添加一个Remote Data Module模块,其中“Threading Model”是指Remote Data Module的线性类型,可以选择Single、Apartment、Free、Bote以及Neuatral五种类型,Single是指应用程序服务器会为每一个客户端应用程序建立一个线程,因而可以保证各个客户端之间不会相互影响;Apartment是指应用程序服务器每个时刻只会服务一个客户端的需求,如果读者的应用程序服务器是建立在BDE的基础之上的,建议选择该类型,但必须额外使用一个Tsession对象,并且将其ActiveSessionName属性设为true,用来协调BDE相关数据集的线程处理行为;Free类型是指应用程序服务器具有多个线程处理多个客户端应用程序需求的能力。如果读者的应用程序服务器是以ADO为基础的,则应选择次类型。但读者必须自己处理多线程的协调问题;Both类型的线程与Free类型在用法上相似;Neutral类型是指应用程序服务器可以同时在多个线程上为多个客户端程序服务,但COM必须保证不会发生冲突,该类型用于COM+环境下,否则它会自动转为Apartment.

因为我们实例中的应用程序服务器是建立在BDE的基础之上的,所以选择Apartment。

③、 在数据模块上添加一个TQuery对象和一个TdataSetProvider对象。在TQuery的SQL属性框里写上查询语句,如:select * from XXXX,其中XXXX是表名。

④、 保存,设置服务器名为:demosever,一个简单的应用程序服务器基本上就做好了,这是一个可执行文件,运行一次就会自动注册其接口,我们在其他机器上就能查到这个接口,所以就可以在客户端程序上使用这个服务器。

另外,如果读者想为应用程序服务器增加一些属性或者方法,可以选择“View”菜单,单击“Type Library”菜单项,增加属性和方法。(在接下来介绍的远程方法的建立时,我们就会用这个方式增加可被客户端调用的远程方法。)

⑵、建立客户端程序。

①、 新建一个工程

②、

查看相关论文专题
加入收藏  打印本文
上一篇论文:基于最大匹配的中文分词改进算法研究
下一篇论文:基于FPGA逻辑分析仪的设计
科技论文分类
科技小论文 数学建模论文
数学论文 节能减排论文
数学小论文 低碳生活论文
物理论文 建筑工程论文
网站设计论文 农业论文
图书情报 环境保护论文
计算机论文 化学论文
机电一体化论文 生物论文
网络安全论文 机械论文
水利论文 地质论文
交通论文
相关计算机论文
最新计算机论文
读者推荐的计算机论文