CN103605571A - 数据库连接池的控制方法 - Google Patents
数据库连接池的控制方法 Download PDFInfo
- Publication number
- CN103605571A CN103605571A CN201310586676.9A CN201310586676A CN103605571A CN 103605571 A CN103605571 A CN 103605571A CN 201310586676 A CN201310586676 A CN 201310586676A CN 103605571 A CN103605571 A CN 103605571A
- Authority
- CN
- China
- Prior art keywords
- data
- connection pool
- database
- current
- connection
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种数据库连接池的控制方法,包括:规范化线程优先级;判断当前连接池是否为空,如果连接池不为空,取出第一个数据连接,设置当前状态为忙,返回该数据连接;如果连接池为空,判断当前外部程序使用中未归还的数据连接个数是否已经达到了连接池内最大连接个数,如果未达到,增加数据连接,并加入当前数据库连接池,返回数据库连接池的第一个数据连接;如果当前外部程序使用中未归还的数据连接个数达到连接池内最大连接个数,设置当前线程的优先级,获取当前时间作为第一时间,循环判断当前连接池是否为空,数据库连接池进入等待状态。在高并发、多数据源环境下,有效提高了数据访问性能。
Description
技术领域
本发明涉及计算机数据库领域,尤其涉及一种数据库连接池的控制方法。
背景技术
信息化应用程序一般都要频繁地访问数据库,典型的一个业务场景如:从数据库读取业务数据,组装成业务信息展现给用户,同时把用户对业务信息的修改内容保存到数据库。
对于一个Web应用系统,应用服务器一般为每一个客户端(即一个会话,session)访问开辟一个独立线程,以提高应用系统性能。此时,如果数据库访问采用单线程的建立、使用、关闭,就会严重阻塞多线程执行效率,并且,一个数据库访问的建立,会消耗较大的系统资源和时间,如果频繁地建立和关闭数据库访问,会极大降低系统性能。
怎样提升应用系统数据访问性能,数据库连接池就是针对这个问题提出来的。
一般地,当数据库连接池建立时,初始化几个数据连接,等待应用程序调用。应用程序调用一次,就取走一个数据连接,使用完了就归还数据连接。当连接池内的数据连接取完了,就增加新数据连接,直到创建连接达到最大允许连接个数。若再取连接时,等待一段时间,若还没有空闲连接就会抛出异常。这就是一般数据库连接池的工作原理,采用数据库连接池技术,能极大提升应用系统的数据访问性能。
但是现有技术中缺少在高并发、多数据源环境下对于数据库连接池的控制方法。
发明内容
本发明要解决的技术问题是,针对现有技术的不足,提供一种数据库连接池的控制方法,在高并发、多数据源环境下,有效提高了数据访问性能。
根据本发明一个方面,提供一种数据库连接池的控制方法,用于对外提供数据连接,包括:
根据预设的优先级范围,规范化传入的线程优先级参数,得到规范化参数优先级;
判断当前连接池是否为空,如果连接池不为空,取出第一个数据连接,设置当前状态为忙,返回该数据连接;
如果连接池为空,判断当前外部程序使用中未归还的数据连接个数是否已经达到了连接池内最大连接个数,如果未达到,增加数据连接,并加入当前数据库连接池,返回数据库连接池的第一个数据连接;
如果当前外部程序使用中未归还的数据连接个数达到连接池内最大连接个数,设置当前线程的优先级为规范化参数优先级,获取当前时间作为第一时间,循环判断当前连接池是否为空,数据库连接池进入等待状态;
循环判断当前连接池是否为空包括:获取当前时间作为第二时间,如果第二时间大于所述第一时间加上最大等待时间,则把数据连接超时信息写入日志,并返回空值;如果第二时间小于第一时间加上最大等待时间,数据库连接池继续等待;如果连接池不为空,即有新释放的数据连接时,取出第一个数据连接,设置数据连接状态为忙,并返回该数据连接。
可选的,其中,增加数据连接包括:
根据连接池扩展时每次增加数据连接个数和当前连接池可增加的数据连接个数进行对比,取其中的最小值作为要增加的数据连接数。
可选的,所述的数据库连接池的控制方法还包括:数据库连接池定期检查数据库连接是否有效,如果无效,会通知连接池清理数据连接。
可选的,所述的数据库连接池的控制方法还包括:数据库连接池定期检查数据库连接池大小,如果连接池为空,同时正在使用的数据连接个数小于连接池最小数据连接个数,则连接池加大数据连接到连接池最小连接个数。
可选的,所述的数据库连接池的控制方法还包括:数据库连接池定期检查数据库连接配置文件最后修改时间,如果最后修改时间在当前时间减去数据库检查时间范围内,则数据库配置文件已被修改,调用数据库连接池工厂刷新数据库连接池配置。
可选的,所述的数据库连接池的控制方法还包括:数据库连接池循环数据库连接池内的数据连接,如果数据连接空闲,且空闲时间大于最大空闲时间,则关闭该数据连接;
其中,关闭数据连接包括:将该数据库连接归还到数据库连接池,以便下回外部程序获取数据连接时能再次取出该连接。
根据本发明另一个方面,提供一种数据库连接池的控制方法,用于对内进行任务调度,包括:
判断配置文件是否已经修改;
如果数据库配置文件有修改,调用数据库连接池工厂,刷新当前数据库连接池配置信息,并终止后续任务调度;
如果数据库配置文件没有修改,则判断当前数据库连接池内的数据连接个数是否大于0;如果大于0,则读取第一个数据连接,并测试该数据连接是否有效;如果测试数据连接无效,则清除当前连接池内的所有数据连接,重新初始化数据连接池并返回;如果测试数据连接有效,则遍历当前数据库连接池内的所有数据连接,判断每一个数据连接是否超过最大空闲时间,如果不超过则取出下一个数据连接,如果超过最大空闲时间则从数据库层释放该数据连接;
如果连接池内数据连接个数为0,则判断当前外部程序使用的数据连接个数是否已经到达连接池内最小数据连接数,如果未达到连接池内最小数据连接数,则增加数据连接个数到达连接池内最小数据连接数,并加入当前数据库连接池后返回。
可选的,其中,测试数据连接是否有效方法包括:根据当前数据连接的数据库类型,采用合适的sql语句进行测试。
可选的,其中,判断配置文件是否已经修改包括:获取当前时间和数据库配置文件的最后修改时间,如果配置文件的最后修改时间大于当前时间减去数据库检查周期,表示已修改。
可选的,其中,数据库配置文件包括:数据源名称、数据库驱动类名、数据库访问路径、连接池内最小数据连接个数、连接池内最大数据连接个数、数据库检查周期。
本发明公开是实施例的优点包括:1)在多线程环境下连接繁忙时,即达到连接池上限且无可用连接,能根据调用的优先级和等待时间智能获取新释放的连接,即优先级越高、等待时间越长,越先获取到即将释放的数据连接,并能自动丢弃等待时间超过预先设置的最大等待时间的数据连接请求。2)能自动释放连接池中空闲时间超过预先设置的最大空闲时间的空闲数据库连接,起到降低系统空闲时的数据库和系统的资源占用。3)能自动检测到连接池中的数据库当前连接状态,如数据库正常、数据库关闭、网络不通等,并能在故障恢复后,立即恢复正常连接。3)能在系统运行时自动适应数据库配置文件的修改,而不用停止应用,这非常适合系统正式上线运行时,对现场数据库连接性能调优。4)支持多数据库、多数据源的数据库连接池的智能管理,每一个数据源就是一个数据库连接池,一个数据库连接池可以管理多个数据库连接。使用本发明,解决了并发多线程、多数据源环境下的数据库连接池的智能化管理,极大地提升了应用系统的数据库访问性能。
附图说明
图1是根据本发明一个实施例提供的数据库连接池工厂类、数据库连接池类、数据库连接类的关系,以及它们与数据库配置文件的关系示意图;
图2是根据本发明一个实施例提供的数据库连接池的连接获取方法流程图;
图3是根据本发明一个实施例提供的数据库连接池的任务调度方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图,对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。其他实施方案可以包括结构的、逻辑的、电气的、过程的,实施例仅代表可能的变化。除非明确要求,否则单独的组件和功能是可选的,并且操作的顺序可以变化。在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本发明的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。
定义
根据本发明一个实施例,数据库配置文件是一个有固定名称(例如datasource.properties)和相对路径(例如放在源代码的根目录)的属性文件,采用键值对的形式列出每一个属性和属性值。
如表1所示,属性内容可以包括:数据源名称、数据库驱动类名、数据库访问路径、
用户名(可用MD5加密)、用户密码(可用MD5加密)、
连接池内最小数据连接个数(创建连接池时默认创建的数据连接个数,例如1-10)、
连接池内最大数据连接个数(能创建的最大在线数据连接个数,例如25-250)、
连接池扩展时每次增加数据连接个数(例如1-10)、
最大等待时间(连接繁忙时,等待数据连接超过该时间就会返回空值,例如1000-5000毫秒)、
最大空闲时间(一个数据连接的空闲时间超过该值就会释放数据连接,例如60-120分钟)、
数据库检查周期(数据库连接池的调度周期,即多长时间检查一次数据库连接并对连接池进行管理,例如1000-10000毫秒)。
表1
数据库连接池工厂类、数据库连接池类、数据库连接类的关系,以及它们与数据库配置文件的关系如图1所示。
根据本发明一个实施例,公开了数据库连接池工厂、数据库连接池和数据库连接,数据库连接池工厂根据传入的数据源名称读取数据库配置文件信息,建立数据库连接池,并启动连接池监听任务,数据库连接池初始化数据库连接,并等待外部数据连接调用。数据库连接池工厂提供按数据源名称获取数据库连接池的方法,数据库连接池提供按优先级或无参数获取数据连接功能,数据库连接提供数据连接和关闭连接功能。
根据本发明一个实施例,数据库连接池工厂类提供一个对外获取数据库连接池方法和一个包内刷新数据库连接池的方法。
获取数据库连接池方法是根据数据源名称和数据库配置文件信息(例如数据库驱动类名、数据库访问路径、解压后的用户名和用户密码、连接池内最小数据连接个数)建立数据库连接池,并设置连接池的相关属性(例如连接池扩展时每次增加数据连接个数、最大等待时间、最大空闲时间、数据检查周期,若没有配置这些值,会采用系统默认值),然后根据数据库检查周期(数据库配置文件中定义,若没有配置该值,会采用系统默认值)启动数据库连接池的调度任务,最后返回数据库连接池给外部调用者。
一个数据源名称只会创建一个连接池,同一数据源名称的重复调用,返回结果都是同一个数据库连接池。
包内方法是根据数据源名称刷新数据库连接池配置,当数据库连接池监测到数据库配置文件已修改过时,数据库连接池会自动调用该方法,实现数据库连接池的动态可配置性。
根据本发明一个实施例,数据库连接池类提供两个对外方法调用,一个方法是根据优先级获取数据连接,例如,优先级在1和10之间,数值越大,优先级越高;另外一个方法是无参数的获取数据连接,例如,其实际的优先级是5。
获取数据连接的优先级越高,在数据库连接繁忙时,越先获取到数据连接。数据库连接池同时提供一个根据数据源名称获取数据库连接池的包内方法,供数据库连接池工厂调用,在数据库连接池工厂获取数据库连接池或刷新数据库连接池时,都优先调用该方法,判断指定的数据库连接池是否已经存在。
在外部程序根据数据源名称获取数据库连接池时,若已经存在指定的数据库连接池,则直接返回,否则根据数据库配置文件新建一个数据库连接池;在内部刷新指定数据源名称的数据库连接池时,若已经存在指定的数据库连接池,则根据数据库配置文件重新设置连接池的属性和调度任务,否则不处理。
根据本发明一个实施例,提供数据库连接池的内部调度方法:
1)检查数据库连接是否有效,如果无效,会通知连接池清理数据连接,同时尝试初始化数据库连接池。
2)检查数据库连接池大小,如果连接池为空,同时正在使用的数据连接个数小于连接池最小数据连接个数,则连接池加大数据连接到连接池最小连接个数。
3)检查数据库连接配置文件最后修改时间,如果最后修改时间在当前时间减去数据库检查时间范围内,则数据库配置文件已被修改,调用数据库连接池工厂刷新数据库连接池配置。
4)循环数据库连接池内的数据连接,如果数据连接空闲,且空闲时间大于最大空闲时间,则关闭该数据连接。
根据本发明一个实施例,数据库连接类提供两个无参数的对外方法调用,一个方法是获取数据库连接,另外一个方法是关闭数据库连接。关闭数据连接时,并不是真正关闭数据库连接,而是将该数据库连接归还到数据库连接池,以便下回外部程序获取数据连接时能再次取出该连接。在并发多线程环境下,如果外部程序获取数据连接后,一直不关闭连接,会马上达到数据库连接池的上线,导致后续线程无法访问数据库。
本发明通过数据库连接池工厂类、数据库连接池类、数据库连接类以及数据库配置文件即可实现现有技术中几十个数据类型才能实现的数据库连接池管理,极大地简化了数据库连接池的管理和实现。
数据库连接池的连接获取方法
根据本发明一个实施例,提供一种数据库连接池的获取连接的方法,如图2所示,获取数据连接的方法包括:
P1、根据优先级(即线程优先级)范围来规范化传入的参数优先级;例如,确保优先级数据在1和10范围内,超过10时,优先级设置为10,低于1时,优先级设置为1;
P2、判断当前连接池是否为空;
P21、如果连接池不为空,则取出第一个数据连接,设置当前状态为忙,并返回该数据连接;
P22、如果连接池为空,判断当前外部程序使用中未归还的数据连接个数是否已经达到了连接池内最大连接个数;
P221、如果未达到,则根据连接池扩展时每次增加数据连接个数和当前连接池可增加的数据连接个数进行对比,取其中的最小值作为要增加的数据连接数,并加入当前数据库连接池,返回数据库连接池的第一个数据连接;
P222、如果当前外部程序使用中未归还的数据连接个数达到连接池内最大连接个数,设置当前线程的优先级等级为传入参数的优先级,并获取当前时间,接着进入判断当前连接池是否为空循环体内,数据库连接池进入等待状态;
P2221、如果当前时间大于上面循环体外获取的当前时间加上最大等待时间,则把数据连接超时信息写入日志,并返回空值;
P2222、如果当前时间小于上面循环体外获取的当前时间加上最大等待时间,数据库连接池继续等待,直到获取新释放的数据连接或数据连接超时;
P2223、如果连接池不为空,即有新释放的数据连接时,取出第一个数据连接,设置数据连接状态为忙,并返回该数据连接。
根据本发明一个实施例,数据库连接池定期检查数据库连接是否有效,如果无效,会通知连接池清理数据连接,同时尝试初始化数据库连接池。
根据本发明一个实施例,数据库连接池定期检查数据库连接池大小,如果连接池为空,同时正在使用的数据连接个数小于连接池最小数据连接个数,则连接池加大数据连接到连接池最小连接个数。
根据本发明一个实施例,数据库连接池定期检查数据库连接配置文件最后修改时间,如果最后修改时间在当前时间减去数据库检查时间范围内,则数据库配置文件已被修改,调用数据库连接池工厂刷新数据库连接池配置。
根据本发明一个实施例,数据库连接池循环数据库连接池内的数据连接,如果数据连接空闲,且空闲时间大于最大空闲时间,则关闭该数据连接。
从而,在连接繁忙时,基于操作系统的支持,能根据调用的优先级(线程优先级)和等待时间智能获取新释放的连接;能自动丢弃等待时间超过预先设置的最大等待时间的数据连接请求;能自动释放连接池中空闲时间超过预先设置的最大空闲时间的空闲数据库连接;能自动检测到连接池中的数据库当前连接状态,并能在故障恢复后,立即恢复正常连接;能自动检测到数据库配置文件是否修改,对已修改的配置属性马上应用到数据库连接池。
数据库连接池的任务调度方法
根据本发明一个实施例,提供一种数据库连接池的任务调度方法,如图3所示,是数据库连接池的任务调度处理流程图。调度方法包括:
Q1、首先获取当前时间和数据库配置文件的最后修改时间;
Q2、判断配置文件是否已经修改;
Q21、如果配置文件的最后修改时间大于当前时间减去数据库检查周期,则说明数据库配置文件已经在上一个任务调度后被修改了,就调用数据库连接池工厂,刷新当前数据库连接池配置信息,并终止后续任务调度;
Q22、如果数据库配置文件没有修改,则判断当前数据库连接池内的数据连接个数是否大于0;
Q221、如果大于0,则读取第一个数据连接,并调用数据库连接池类的私有方法测试该数据连接是否有效;
根据本发明一个实施例,测试数据连接是否有效方法会根据当前数据连接的数据库类型,采用合适的sql语句进行测试,如Oracle数据库测试语句可以为“select1fromdual”;
Q2211、如果测试数据连接无效,则清除当前连接池内的所有数据连接,并重新初始化数据连接池,不管初始化结果成功与否,都写入日志并返回,等待下一次任务调度;
Q2212、如果测试数据连接有效,则循环当前数据库连接池内的所有数据连接,判断每一个数据连接是否超过最大空闲时间;如果不超过,则取出下一个数据连接,如果超过最大空闲时间,则从数据库层真正释放该数据连接(关闭数据库连接),并写入日志,继续下一数据连接,直到循环结束;
Q222、如果连接池内数据连接个数为0,则判断当前外部程序使用的数据连接个数是否已经到达连接池内最小数据连接数,如果未达到连接池内最小数据连接数,则增加数据连接个数到达连接池内最小数据连接数,并加入当前数据库连接池后返回,等待下一次任务调度。
本发明方法简单、高效地实现了在并发多线程、多数据源环境下的数据库连接池的智能化管理,极大地提高应用系统的数据访问性能和应用系统的稳定性、健壮性、动态可配置性。
应该注意到并理解,在不脱离后附的权利要求所要求的本发明的精神和范围的情况下,能够对上述详细描述的本发明做出各种修改和改进。因此,要求保护的技术方案的范围不受所给出的任何特定示范教导的限制。
Claims (10)
1.一种数据库连接池的控制方法,用于对外提供数据连接,包括:
根据预设的优先级范围,规范化传入的线程优先级参数,得到规范化参数优先级;
判断当前连接池是否为空,如果连接池不为空,取出第一个数据连接,设置当前状态为忙,返回该数据连接;
如果连接池为空,判断当前外部程序使用中未归还的数据连接个数是否已经达到了连接池内最大连接个数,如果未达到,增加数据连接,并加入当前数据库连接池,返回数据库连接池的第一个数据连接;
如果当前外部程序使用中未归还的数据连接个数达到连接池内最大连接个数,设置当前线程的优先级为规范化参数优先级,获取当前时间作为第一时间,循环判断当前连接池是否为空,数据库连接池进入等待状态;
循环判断当前连接池是否为空包括:获取当前时间作为第二时间,如果第二时间大于所述第一时间加上最大等待时间,则把数据连接超时信息写入日志,并返回空值;如果第二时间小于第一时间加上最大等待时间,数据库连接池继续等待;如果连接池不为空,即有新释放的数据连接时,取出第一个数据连接,设置数据连接状态为忙,并返回该数据连接。
2.根据权利要求1所述的数据库连接池的控制方法,其中,增加数据连接包括:
根据连接池扩展时每次增加数据连接个数和当前连接池可增加的数据连接个数进行对比,取其中的最小值作为要增加的数据连接数。
3.根据权利要求1所述的数据库连接池的控制方法,还包括:数据库连接池定期检查数据库连接是否有效,如果无效,会通知连接池清理数据连接。
4.根据权利要求1所述的数据库连接池的控制方法,还包括:数据库连接池定期检查数据库连接池大小,如果连接池为空,同时正在使用的数据连接个数小于连接池最小数据连接个数,则连接池加大数据连接到连接池最小连接个数。
5.根据权利要求1所述的数据库连接池的控制方法,还包括:数据库连接池定期检查数据库连接配置文件最后修改时间,如果最后修改时间在当前时间减去数据库检查时间范围内,则数据库配置文件已被修改,调用数据库连接池工厂刷新数据库连接池配置。
6.根据权利要求1所述的数据库连接池的控制方法,还包括:数据库连接池循环数据库连接池内的数据连接,如果数据连接空闲,且空闲时间大于最大空闲时间,则关闭该数据连接;
其中,关闭数据连接包括:将该数据库连接归还到数据库连接池,以便下回外部程序获取数据连接时能再次取出该连接。
7.一种数据库连接池的控制方法,用于对内进行任务调度,包括:
判断配置文件是否已经修改;
如果数据库配置文件有修改,调用数据库连接池工厂,刷新当前数据库连接池配置信息,并终止后续任务调度;
如果数据库配置文件没有修改,则判断当前数据库连接池内的数据连接个数是否大于0;如果大于0,则读取第一个数据连接,并测试该数据连接是否有效;如果测试数据连接无效,则清除当前连接池内的所有数据连接,重新初始化数据连接池并返回;如果测试数据连接有效,则遍历当前数据库连接池内的所有数据连接,判断每一个数据连接是否超过最大空闲时间,如果不超过则取出下一个数据连接,如果超过最大空闲时间则从数据库层释放该数据连接;
如果连接池内数据连接个数为0,则判断当前外部程序使用的数据连接个数是否已经到达连接池内最小数据连接数,如果未达到连接池内最小数据连接数,则增加数据连接个数到达连接池内最小数据连接数,并加入当前数据库连接池后返回。
8.根据权利要求7所述的数据库连接池的控制方法,测试数据连接是否有效方法包括:根据当前数据连接的数据库类型,采用合适的sql语句进行测试。
9.根据权利要求7所述的数据库连接池的控制方法,判断配置文件是否已经修改包括:
获取当前时间和数据库配置文件的最后修改时间,如果配置文件的最后修改时间大于当前时间减去数据库检查周期,表示已修改。
10.根据权利要求7所述的数据库连接池的控制方法,其中,数据库配置文件包括:
数据源名称、数据库驱动类名、数据库访问路径、连接池内最小数据连接个数、连接池内最大数据连接个数、数据库检查周期。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310586676.9A CN103605571A (zh) | 2013-11-20 | 2013-11-20 | 数据库连接池的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310586676.9A CN103605571A (zh) | 2013-11-20 | 2013-11-20 | 数据库连接池的控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103605571A true CN103605571A (zh) | 2014-02-26 |
Family
ID=50123800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310586676.9A Pending CN103605571A (zh) | 2013-11-20 | 2013-11-20 | 数据库连接池的控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103605571A (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462514A (zh) * | 2014-12-19 | 2015-03-25 | 北京奇虎科技有限公司 | 数据库的高可用解决方法、连接控制装置和系统 |
CN104539713A (zh) * | 2014-12-31 | 2015-04-22 | 北京奇虎科技有限公司 | 业务请求处理方法和装置 |
CN104572974A (zh) * | 2014-12-31 | 2015-04-29 | 北京奇虎科技有限公司 | 业务请求处理方法和装置 |
CN104618493A (zh) * | 2015-02-12 | 2015-05-13 | 小米科技有限责任公司 | 数据请求处理方法及装置 |
CN104951481A (zh) * | 2014-03-31 | 2015-09-30 | 中国移动通信集团云南有限公司 | 一种管理数据库连接的方法和装置 |
CN105426285A (zh) * | 2015-10-28 | 2016-03-23 | 联动优势科技有限公司 | 数据库连接池监控和管理的方法和装置 |
CN105574009A (zh) * | 2014-10-11 | 2016-05-11 | 阿里巴巴集团控股有限公司 | 查询请求的处理方法和装置 |
CN105786909A (zh) * | 2014-12-25 | 2016-07-20 | 北京东方通科技股份有限公司 | 一种自适应消息队列积压负载的应用触发方法和系统 |
CN105843874A (zh) * | 2016-03-18 | 2016-08-10 | 山东华软金盾软件股份有限公司 | 一种数据库连接池实现方法和系统 |
CN106445976A (zh) * | 2015-08-12 | 2017-02-22 | 北京国双科技有限公司 | 数据库连接的控制方法及装置 |
CN106468559A (zh) * | 2015-08-20 | 2017-03-01 | 高德信息技术有限公司 | 一种导航语音播报方法及装置 |
CN106649857A (zh) * | 2016-12-30 | 2017-05-10 | 北京恒华伟业科技股份有限公司 | 一种基于读写分离的数据库操作方法及装置 |
CN107832230A (zh) * | 2017-12-04 | 2018-03-23 | 中国工商银行股份有限公司 | 基于数据调优的测试方法、设备以及系统 |
CN105095425B (zh) * | 2015-07-17 | 2018-07-24 | 北京京东尚科信息技术有限公司 | 一种数据库的跨库结转方法及装置 |
CN110147508A (zh) * | 2017-10-26 | 2019-08-20 | 北京京东尚科信息技术有限公司 | 一种系统限流的方法和装置 |
CN111158888A (zh) * | 2019-12-31 | 2020-05-15 | 北京明略软件系统有限公司 | 多任务调度方法和装置 |
CN111414244A (zh) * | 2020-03-24 | 2020-07-14 | 中安云科科技发展(山东)有限公司 | 一种高效调用密码机的方法 |
CN111601073A (zh) * | 2020-04-15 | 2020-08-28 | 深圳新贝奥科技有限公司 | 一种局域网向云端服务器推送视频码流的方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070118534A1 (en) * | 2005-11-18 | 2007-05-24 | Database-Brothers, Inc. | Auditing database end user activity in one to multi-tier web application and local environments |
CN102346767A (zh) * | 2011-09-19 | 2012-02-08 | 北京金和软件股份有限公司 | 一种基于双连接池的数据库连接方法 |
-
2013
- 2013-11-20 CN CN201310586676.9A patent/CN103605571A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070118534A1 (en) * | 2005-11-18 | 2007-05-24 | Database-Brothers, Inc. | Auditing database end user activity in one to multi-tier web application and local environments |
CN102346767A (zh) * | 2011-09-19 | 2012-02-08 | 北京金和软件股份有限公司 | 一种基于双连接池的数据库连接方法 |
Non-Patent Citations (3)
Title |
---|
刘菲,游达章: ""基于Java的数据库连接池的设计与优化"", 《微型电脑应用》 * |
孔哲,孟丽荣,孙筱雯: ""数据库连接策略优化方法"", 《山东大学学报(工学版)》 * |
马海燕,彭宇行: ""基于JDBC数据库连接池的自适应管理策略研究"", 《计算机应用研究》 * |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104951481A (zh) * | 2014-03-31 | 2015-09-30 | 中国移动通信集团云南有限公司 | 一种管理数据库连接的方法和装置 |
CN104951481B (zh) * | 2014-03-31 | 2018-10-23 | 中国移动通信集团云南有限公司 | 一种管理数据库连接的方法和装置 |
CN105574009A (zh) * | 2014-10-11 | 2016-05-11 | 阿里巴巴集团控股有限公司 | 查询请求的处理方法和装置 |
CN105574009B (zh) * | 2014-10-11 | 2018-12-14 | 阿里巴巴集团控股有限公司 | 查询请求的处理方法和装置 |
CN104462514A (zh) * | 2014-12-19 | 2015-03-25 | 北京奇虎科技有限公司 | 数据库的高可用解决方法、连接控制装置和系统 |
CN104462514B (zh) * | 2014-12-19 | 2018-09-11 | 北京奇虎科技有限公司 | 数据库的高可用解决方法、连接控制装置和系统 |
CN105786909A (zh) * | 2014-12-25 | 2016-07-20 | 北京东方通科技股份有限公司 | 一种自适应消息队列积压负载的应用触发方法和系统 |
CN104572974A (zh) * | 2014-12-31 | 2015-04-29 | 北京奇虎科技有限公司 | 业务请求处理方法和装置 |
WO2016107340A1 (zh) * | 2014-12-31 | 2016-07-07 | 北京奇虎科技有限公司 | 业务请求处理方法和装置 |
CN104539713A (zh) * | 2014-12-31 | 2015-04-22 | 北京奇虎科技有限公司 | 业务请求处理方法和装置 |
CN104572974B (zh) * | 2014-12-31 | 2018-10-12 | 北京奇虎科技有限公司 | 业务请求处理方法和装置 |
CN104539713B (zh) * | 2014-12-31 | 2018-10-09 | 北京奇虎科技有限公司 | 业务请求处理方法和装置 |
CN104618493A (zh) * | 2015-02-12 | 2015-05-13 | 小米科技有限责任公司 | 数据请求处理方法及装置 |
CN105095425B (zh) * | 2015-07-17 | 2018-07-24 | 北京京东尚科信息技术有限公司 | 一种数据库的跨库结转方法及装置 |
CN106445976B (zh) * | 2015-08-12 | 2019-12-24 | 北京国双科技有限公司 | 数据库连接的控制方法及装置 |
CN106445976A (zh) * | 2015-08-12 | 2017-02-22 | 北京国双科技有限公司 | 数据库连接的控制方法及装置 |
CN106468559B (zh) * | 2015-08-20 | 2019-10-22 | 高德信息技术有限公司 | 一种导航语音播报方法及装置 |
CN106468559A (zh) * | 2015-08-20 | 2017-03-01 | 高德信息技术有限公司 | 一种导航语音播报方法及装置 |
CN105426285B (zh) * | 2015-10-28 | 2019-01-18 | 联动优势科技有限公司 | 数据库连接池监控和管理的方法和装置 |
CN105426285A (zh) * | 2015-10-28 | 2016-03-23 | 联动优势科技有限公司 | 数据库连接池监控和管理的方法和装置 |
CN105843874A (zh) * | 2016-03-18 | 2016-08-10 | 山东华软金盾软件股份有限公司 | 一种数据库连接池实现方法和系统 |
CN106649857A (zh) * | 2016-12-30 | 2017-05-10 | 北京恒华伟业科技股份有限公司 | 一种基于读写分离的数据库操作方法及装置 |
CN110147508A (zh) * | 2017-10-26 | 2019-08-20 | 北京京东尚科信息技术有限公司 | 一种系统限流的方法和装置 |
CN107832230A (zh) * | 2017-12-04 | 2018-03-23 | 中国工商银行股份有限公司 | 基于数据调优的测试方法、设备以及系统 |
CN107832230B (zh) * | 2017-12-04 | 2021-01-01 | 中国工商银行股份有限公司 | 基于数据调优的测试方法、设备以及系统 |
CN111158888A (zh) * | 2019-12-31 | 2020-05-15 | 北京明略软件系统有限公司 | 多任务调度方法和装置 |
CN111414244A (zh) * | 2020-03-24 | 2020-07-14 | 中安云科科技发展(山东)有限公司 | 一种高效调用密码机的方法 |
CN111414244B (zh) * | 2020-03-24 | 2022-04-08 | 中安云科科技发展(山东)有限公司 | 一种高效调用密码机的方法 |
CN111601073A (zh) * | 2020-04-15 | 2020-08-28 | 深圳新贝奥科技有限公司 | 一种局域网向云端服务器推送视频码流的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103605571A (zh) | 数据库连接池的控制方法 | |
CN109033123B (zh) | 基于大数据的查询方法、装置、计算机设备和存储介质 | |
CN107451220B (zh) | 一种分布式NewSQL数据库系统 | |
CN102495857B (zh) | 一种分布式数据库的负载均衡方法 | |
US9069832B2 (en) | Approach for modularized sychronization and memory management | |
Huang et al. | Research on architecture and query performance based on distributed graph database Neo4j | |
US8949222B2 (en) | Changing the compression level of query plans | |
US10261888B2 (en) | Emulating an environment of a target database system | |
CN104573115A (zh) | 支持多类型数据库操作的集成接口的实现方法及系统 | |
WO2019047441A1 (zh) | 一种通信优化方法及系统 | |
US8447772B2 (en) | Energy monetary cost aware query optimization | |
CN108459913B (zh) | 数据并行处理方法、装置及服务器 | |
WO2019109854A1 (zh) | 分布式数据库数据处理方法、装置、存储介质及电子装置 | |
CN103488526A (zh) | 在分布式系统中锁定业务资源的系统和方法 | |
US8539490B2 (en) | System and method for providing dynamic transaction optimizations | |
CN105354328A (zh) | 一种解决NoSQL数据库并发访问冲突的系统及方法 | |
CN105718474A (zh) | 用于对MySQL数据库的并发操作进行控制的方法及装置 | |
Mühlbauer et al. | Scyper: A hybrid oltp&olap distributed main memory database system for scalable real-time analytics | |
CN103838781A (zh) | 数据库访问方法及系统 | |
CN103064964B (zh) | 一种支持分布式事务的数据库的连接方法 | |
CN107798111A (zh) | 一种分布式环境中大批量导出数据的方法 | |
WO2016078388A1 (zh) | 一种数据老化方法及装置 | |
CN107368498A (zh) | 优化MySQL悲观锁的锁等待超时时间的方法及装置 | |
US20230325242A1 (en) | Fast shutdown of large scale-up processes | |
CN205142283U (zh) | 多平台数据共享系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140226 |
|
RJ01 | Rejection of invention patent application after publication |