一种多元异构关系型数据库连接复用及统一管控方法

文档序号:6640289阅读:677来源:国知局
一种多元异构关系型数据库连接复用及统一管控方法
【专利摘要】本发明涉及软件技术开发领域,具体涉及一种多元异构关系型数据库连接复用及统一管控方法。本发明系统设有数据库连接池管理器和数据库连接池;相同数据库连接是由同一个数据库连接池统一管控,每个数据库都有自己独立的数据库连接池;各多元异构数据库连接池又统一由数据库连接池管理器统一管控。本发明解决了多个数据源并发操作时数据库的高效、稳定问题;可以用于多元异构关系型数据库的管控。
【专利说明】一种多元异构关系型数据库连接复用及统一管控方法

【技术领域】
[0001]本发明涉及软件技术开发领域,具体涉及一种多元异构关系型数据库连接复用及统一管控方法。

【背景技术】
[0002]随着互联网技术的普及与发展,计算机应用系统也越来越复杂,而应用又离不开对数据库的依赖。用户操作产生的数据流绝大多数需要持久化到保存,而关系型数据库又是时至今日数据库应用的主流趋势。所以大都数软件应用尤其是企业级应用都是建立在关系型数据库设计之上的。软件应用业务越复杂,对其应用数据库的访问也会越来越频繁。如果只按普通单一的连接-关闭模式,频繁的建立、关闭连接,势必会极大的减低系统的性能。当应用如果需要同时连接多个异构关系型数据库进行数据持久化操作时,数据库连接资源就会变得更错综纷杂。而异构数据库的物理差异也巨大,支持的数据库连接情况也各异。如果没有高效、有序的管控方法,势必会导致系统性能不稳定,严重时甚至会导致系统无法正常运行,数据库连接的混乱使用会成为系统性能的瓶颈。


【发明内容】

[0003]本发明解决的技术问题在于提供一种多元异构关系型数据库连接复用及统一管控方法。在应用连接多个数据源并发操作的情况下,能够使得各异构数据库连接可以得到高效、有序、安全、合理的复用。
[0004]本发明解决上述技术问题的技术方案是:
[0005]系统设有数据库连接池管理器和数据库连接池;相同数据库连接是由同一个数据库连接池统一管控,每个数据库都有自己独立的数据库连接池;各多元异构数据库连接池又统一由数据库连接池管理器统一管控。
[0006]由所述的数据库连接池管理器负责管理各数据源数据库连接池生命周期统一管控,通过它进行新建、清除、缓存等一系列线程池管理操作;当一个数据源线程池不存在时,自动根据其库连接参数新建相应连接线程池并进行缓存。如果已经存在有效可用线程池,则直接返回已有线程池实例;当某个数据源的线程池超过最大空闲时间则根据应用程序使用情况进行清除操作;
[0007]由数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用现有的数据库连接,而不再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库链接遗漏。
[0008]数据库连接池管控数据库连接的方式是在内部对象池中维护一定数量的数据库连接,并对外暴露数据库连接获取和返回方法;程序调用该方法即可获取其一有效数据库连接。
[0009]程序获取数据库连接之后,无需对其使用的连接进行关闭、清除等控制操作,数据库连接的创建与销毁统一由对应线程池进行管控操作。
[0010]所述方法的实施流程是:
[0011]首先,根据应用程序访问各数据库情况统一配置线程池等相关参数,如初始化连接数、最小连接数、最大连接数等;
[0012]接着,应用程序将数据源连接参数传至数据库连接池管理器,它将根据从自身缓存检索查找是否存在有效可复用的连接池,如果存在直接返回线程池实例,否则根据相关参数新建连接池;新建时同时根据数据源连接参数进行判定数据源是否有效存在,如果不存在则会抛出异常;
[0013]最后,程序获取有效线程池实例之后,直接调用其对外开放的获取对应数据库连接的方法获取有效数据库连接,在使用完之后无需进行关闭连接操作,线程池能够统一管理数据库连接的释放操作。
[0014]本发明的有益效果是:本方法可以屏蔽各多源异构数据库的物理差异,通过一个统一的线程池管控机制及连接管理策略,管理应用系统的数据库连接连接极大提高了连接资源的复用,及合理、有序调度。进而极大提高了程序的健壮性与伸缩性及对数据库操作的性能。

【专利附图】

【附图说明】
[0015]下面结合附图对本发明进一步说明:
[0016]图1为系统实现本方法的具体逻辑关系图;
[0017]图2为本发明业务流程图。

【具体实施方式】
[0018]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0019]本发明涉及的数据库连接复用及统一管控方法,主要适用于数据源随时变更且多个同时并发访问的情况下,不管是异构数据库源还是同构数据库源,都可以在屏蔽底层物理差异的情况下弹性可扩展地接入,通过统一管控方法,管理数据库连接资源。
[0020]见图1所示,由所述的数据库连接池管理器负责管理各数据源数据库连接池生命周期统一管控,通过它进行新建、清除、缓存等一系列线程池管理操作;当一个数据源线程池不存在时,自动根据其库连接参数新建相应连接线程池并进行缓存。如果已经存在有效可用线程池,则直接返回已有线程池实例;当某个数据源的线程池超过最大空闲时间则根据应用程序使用情况进行清除操作。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用现有的数据库连接,而不再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库链接遗漏。
[0021]图2为本发明业务流程图,其主要步骤如下:
[0022]1、程序发起数据库请求访问,传递数据源连接参数至数据库连接池管理器。
[0023]2、数据库连接池管理器根据参数检索其缓存判断是否已经存在有效可复用连接池实例,若存在则直接通过调用线程池实例对外公开的获取数据库连接的方法获取有效数据库连接。如果不存在,则根据参数新建对应连接池,先根据参数判定数据源是否有效,如果无效直接抛出异常,用户需返回检查数据源参数是否正确。
[0024]3、如果数据源有效则创建连接池实例,用户根直接调用相关方法获取其对外提供的有效数据库连接。
【权利要求】
1.一种多元异构关系型数据库连接复用及统一管控方法,其特征在于:系统设有数据库连接池管理器和数据库连接池;相同数据库连接是由同一个数据库连接池统一管控,每个数据库都有自己独立的数据库连接池;各多元异构数据库连接池又统一由数据库连接池管理器统一管控。
2.根据权利要求1所述的多元异构关系型数据库连接复用及统一管控方法,其特征在于:由所述的数据库连接池管理器负责管理各数据源数据库连接池生命周期统一管控,通过它进行新建、清除、缓存等一系列线程池管理操作;当一个数据源线程池不存在时,自动根据其库连接参数新建相应连接线程池并进行缓存。如果已经存在有效可用线程池,则直接返回已有线程池实例;当某个数据源的线程池超过最大空闲时间则根据应用程序使用情况进行清除操作; 由数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用现有的数据库连接,而不再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库链接遗漏。
3.根据权利要求2所述的多元异构关系型数据库连接复用及统一管控方法,其特征在于:数据库连接池管控数据库连接的方式是在内部对象池中维护一定数量的数据库连接,并对外暴露数据库连接获取和返回方法;程序调用该方法即可获取其一有效数据库连接。
4.根据权利要求1、2或3所述的多元异构关系型数据库连接复用及统一管控方法,其特征在于:程序获取数据库连接之后,无需对其使用的连接进行关闭、清除等控制操作,数据库连接的创建与销毁统一由对应线程池进行管控操作。
5.根据权利要求1、2或3所述的多元异构关系型数据库连接复用及统一管控方法,其特征在于:所述方法的实施流程是: 首先,根据应用程序访问各数据库情况统一配置线程池等相关参数,如初始化连接数、最小连接数、最大连接数等; 接着,应用程序将数据源连接参数传至数据库连接池管理器,它将根据从自身缓存检索查找是否存在有效可复用的连接池,如果存在直接返回线程池实例,否则根据相关参数新建连接池;新建时同时根据数据源连接参数进行判定数据源是否有效存在,如果不存在则会抛出异常; 最后,程序获取有效线程池实例之后,直接调用其对外开放的获取对应数据库连接的方法获取有效数据库连接,在使用完之后无需进行关闭连接操作,线程池能够统一管理数据库连接的释放操作。
6.根据权利要求4所述的多元异构关系型数据库连接复用及统一管控方法,其特征在于:所述方法的实施流程是: 首先,根据应用程序访问各数据库情况统一配置线程池等相关参数,如初始化连接数、最小连接数、最大连接数等; 接着,应用程序将数据源连接参数传至数据库连接池管理器,它将根据从自身缓存检索查找是否存在有效可复用的连接池,如果存在直接返回线程池实例,否则根据相关参数新建连接池;新建时同时根据数据源连接参数进行判定数据源是否有效存在,如果不存在则会抛出异常; 最后,程序获取有效线程池实例之后,直接调用其对外开放的获取对应数据库连接的方法获取有效数据库连接,在使用完之后无需进行关闭连接操作,线程池能够统一管理数据库连接的释放操作。
【文档编号】G06F17/30GK104484452SQ201410831708
【公开日】2015年4月1日 申请日期:2014年12月25日 优先权日:2014年12月25日
【发明者】郭树盛, 唐素芳, 徐志伟 申请人:广东电子工业研究院有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1