论文部分内容阅读
目前大多数应用软件中的数据访问都是采用直接向数据库发送SQL请求或通过调用数据库中预先编写好的存储过程的方式,然后将结果返回。一旦需要移植数据库,则需要耗费大量的时间和精力在程序中改写连接数据库的代码。对于实现分布在不同地理位置的多数据库联合操作、跨库事务处理、数据同步等也都存在着一些问题。由于数据库连接数的限制,直接影响着用户的访问数量和服务的质量。大量并发的打开与关闭数据库连接将耗费大量的时间和系统资源。当连接达到上限时,其他用户无法访问数据库,用户的服务质量得不到保证。本文通过设计数据库连接池,统一多数据库访问接口,通过两种复用技术充分利用连接资源,优化访问数据库效率,并提出一种带QoS(服务质量)需求的数据访问中间件模型,该中间件可以根据用户的不同权限来连接访问数据库,当数据库连接数到达上限的时候,该中间件可以通过带QoS需求的剥夺式连接复用算法剥夺、拒绝或分配连接给访问的用户,以满足不同用户的QOS需求。于此同时,该模型通过通信传输过程的加密,和数据库加密技术以确保数据的安全性。本课题的主要研究工作及创新性体现在以下几个方面:1)设计一个通用的数据访问机制,统一多数据库访问接口,能对多数据库进行统一的、高效的连接和访问管理。2)设计通用数据库连接池,实现对每个连接的可控。并设计出对池内所有连接的管理、维护、分配、释放、复用、剥夺策略。3)采用基于QoS需求的剥夺式的连接访问方式以便能更有效的、灵活的对数据库连接进行控制管理。对于多用户同时访问数据库时,若数据库连接数已经到达上限,该中间件会采用剥夺式连接算法按用户的权限对数据库进行有效的连接管理。当用户访问数量达到最大连接数,且在这个时候某个高级用户请求连接该数据库时,中间件层会根据用户的权限,采取剥夺式连接策略对低权限的连接进行剥夺,被剥夺的连接交给高级用户,并按照连接复用算法完成被剥夺用户的连接复用。4)由于数据访问中间件可以独立于数据库服务器与客户机,因此要设计一定协议以完成其正常通信,并且对于返回给客户端的数据进行处理并对其进行有效的安全性控制。