数据库中间件的研究及其应用 下载本文

内容发布更新时间 : 2024/6/30 15:40:27星期一 下面是文章的全部内容请认真阅读。

龙源期刊网 http://www.qikan.com.cn

数据库中间件的研究及其应用

作者:张宗军

来源:《商场现代化》2010年第09期

[摘 要]客户机/服务器两层结构的模式大大阻碍着系统的发展,单一的服务器结构紧密地依赖供应商,也难以管理客户端的机群,文章就此问题展开研究和探讨。 [关键词]数据库 客户端 中间件

随着用户业务需求的增长以及Intenet/Intranet的普及。传统两层C/S模式将以三层C/S模式体系结构取而代之。三层C/S结构是将应用从功能划分成用户界面层、商务服务层和数据层,以商务服务层为核心,通过某种形式的中间件来实现它的功能。

中间件在客户机/服务器或服务器/服务器之间传送高级通信,将客户机群和服务器群结合起来。其工作流程是:在客户机里的应用程序需要驻留网上某个服务器的数据或服务时搜索此数据的C/S应用程序需访问中间件系统.该系统将查找数据源或服务。并在发送应用程序请求后重新打包响应。将其传送回应用程序。数据库访问中间件就是实现这种功能的一种中间件。 一、数据库中间件的作用

多媒体教学支撑平台系统.对于数据库的容量和访问能力要求不苛刻.但是它存储的数据类型杂、访问量不固定、后台数据库种类不一、服务器操作系统各异。因此.这一类数据库中间件的作用主要是以下一些:

1. 支持常用大型数据库的各种操作。可以支持

ORACLE,INFORMIX,SYBASE,MSSQL,DB2,MYSQL等常用数据库,以及JDBC、ODBC接口。更换数据库只要更换相应的驱动就可以,而不需要修改所开发软件系统的代码,方便安全。 2. 提供统一接口。屏蔽数据库之间的操作差异。

3. 封装复杂烦琐的数据库应用接口和数据库操作过程,简化应用程序的数据库操作.提高应用程序开发效率。

4. 支持常用的操作系统。如Windows、UNIX、Linux等常见主流操作系统。跨平台支持。便于应用代码在各平台之间的移植。 二、数据库中间件的设计

龙源期刊网 http://www.qikan.com.cn

客户端到数据连接管理器之间的是逻辑连接,而数据库到数据连接器之间的是物理连接。 数据库中间件位于客户端与数据库之间把二者隔离开来。中间件与各个客户之间的数据通讯采用流套接字实现,多个连接由多个线程完成,这种并发的通讯机制使得访问效率大大提高。中间件与数据库之间采用JDBC连接,多用户共享一个数据连接。同样起到了提高数据库访问效率的效果。数据库中间件对数据库的访问和操作采用SQL语言。

数据库中间件的核心是数据连接管理器,它是一个服务程序,连接了客户端和后台数据库。客户端向其发出对数据库的访问请求,由数据连接管理器寻找与该数据库的可用连接,通过数据连接将访问请求传递给目标数据库。目标数据库执行相应的SQL语句,将结果通过数据连接传回数据连接管理器,再传回给客户端。 三、数据库中间件的实现方法

根据数据库中间件的设计思想,在实现过程中主要运用了下面的关键技术。

1. JDBC(Java Database Connectivity)。JDBC是一个通用的SQL数据库访问框架.它对于不同的数据库使用了统一的接口。使用JDBC只需写一个数据库接口。不需要重新编码就能够访问任何数据源。由于JDBC已经得到了各大厂商的认可与支持.也为开发者和用户提供了一条从WEB服务器访问数据库的捷径。JDBC将进一步得以推广从而最终成为WE B服务器访问数据库的事实标准。所开发系统中应用的数据库中间件原型就是建立在JI)BC的基础上。 2. 流套接字(Stream Socket )。TCP协议提供了一条可靠的点对点通信通道,套接字是在网络上运行的两个程序之间的双向通信链路的一个端点。对应于TCP的套接字称为流套接字.它是面向连接的。服务器应用程序侦听特定端口,等待来自客户的连接请求。当一个连接请求到达时,客户与服务器之间建立一条专用连接,它们就在这条连接上通信。在连接过程中。客户被分配一个本地端口号,并将一个套接字绑定到这个端口。客户通过向套接字写入信息以及从套接字中读出来自服务器的信息的方式与服务器通信。

与此相似,服务器也获得一个新的本地端口号。服务器也将一个套接字绑定到它的本地端口,并通过读写这个套接字与客户通信。

3. 多线程技术。线程是指进程中单一顺序的控制流。每个进程在任何给定时刻可能有若干个线程在运行。线程共享进程的所有的程序和数据;线程有自身的运行单元:线程有它自己的私有存储和执行环境,使得服务器进程不随客户数的增加而线性增加。可减少服务器进程的压力,降低开销。充分利用CPU的资源。

线程被用来建立请求驱动的服务程序。每个客户一个线程。多个线程可以并发执行.多个并发线程对多个客户的并发请求采取分而治之的措施。从而解决并发请求的问题。多线程的低资源开销和高运行效率。使得它具有广阔的应用前景。多线程技术在三层客户机,服务器模式中应用相当广泛。

龙源期刊网 http://www.qikan.com.cn

四、结论

通过实际测试和应用.该数据库中间件的功能和性能都得到了充分的验证。在数据库流量一般而且访问频率比较低的情况下,可以做到及时准确地实现数据库的查询和写入等操作。访问量大的情况下。有可能因为阻塞和延迟造成超时的错误返回。然而,对多媒体教学支撑平台系统来说,峰值访问的情况少。而且通过对数据库的进一步科学设计。采用多层索引等方式。可以减少一次性的数据操作量,在一定程度上可以避免出现峰值频繁访问。

针对多媒体教学平台对数据库的容量和访问能力要求不苛刻,对存储的数据类型杂、访问量不固定、后台数据库种类不一、服务器操作系统各异所设计的数据库中间件满足了日常应用环境的访问需求。并在异构替换等方面体现了优越性。缺点主要在于只能进行简单的数据库查询等操作,还不能进行联机事务处理。安全性、缓冲机制和连接管理也有待完善。

参考文献:

[ l] Blackfin Embedded Processor bf533 datasheet [2] ADSP—BF533 Blaekfin Processor Hardware Reference