发明名称 一种针对数据库连接意外中断的自动重连方法及其装置
摘要 本发明提出了一种针对数据库连接意外中断的自动重连方法及其装置。该装置包括常规和备用两个数据库连接池,连接有效性检测器,数据库连接请求监视器,连接请求优先级分析器和异常捕获器;连接有效性检测器用于预连接,以判断当前欲分配的连接的有效性,在常规数据库连接池中出现失效连接时,备用数据库连接池按需初始化数据库连接。该方法通过数据库连接请求监视器记录两次数据库连接请求之间的时间间隔,连接请求优先级分析器通过预先设定的优先级策略对数据库连接请求进行判断,当有优先级较高的数据库连接请求时,启用备用数据库连接池。本发明保证需要被快速处理的数据库连接请求得以高效执行,有效控制预连接的次数,节约系统开销。
申请公布号 CN102708175B 申请公布日期 2014.04.30
申请号 CN201210138481.3 申请日期 2012.05.07
申请人 北京航空航天大学 发明人 李睿;吕江花;马世龙
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 北京永创新实专利事务所 11121 代理人 周长琪
主权项 一种针对数据库连接意外中断的自动重连装置,其特征在于,该装置包括如下模块:数据库连接池、连接有效性检测器(3)、数据库连接请求监视器(4)、连接请求优先级分析器(5)、以及异常捕获器(6);数据库连接池运行在数据库服务器(7)上,包括常规数据库连接池(1)和备用数据库连接池(2);常规数据库连接池(1)中保存着固定数目的数据库连接,当数据连接池初始化时,将初始化常规数据库连接池(1)中的数据库连接;数据库连接请求监视器(4)检测应用程序发起的数据库连接请求,并记录前后两次数据库连接请求之间的时间间隔;当数据库连接请求监视器(4)检测到数据库连接请求时,首先检测当前常规数据库连接池(1)中是否有空闲连接,若没有空闲连接,则进行等待,直到有空闲连接,若有空闲连接,给该数据库连接请求分配一个数据库连接,并根据前后两次数据库连接请求之间的时间间隔将所分配的数据库连接发送给连接有效性检测器(3)进行有效性检测;连接有效性检测器(3)对常规数据库连接池(1)所分配的数据库连接进行预连接,以检测当前所分配的数据库连接的有效性,若连接有效,则将所分配的数据库连接返回给应用程序所发起的数据库连接请求,若连接无效,则发送通知给连接请求优先级分析器(5);连接请求优先级分析器(5)在接收到连接有效性检测器(3)的通知后,通过预先设定的优先级策略对应用程序所发起的数据库连接请求进行判断,当该数据库连接请求属于优先级较高的数据库连接请求时,发送启用命令给备用数据库连接池(2);备用数据库连接池(2)在接收到启用命令后,进行初始化,初始化用户设定数目的数据库连接;异常捕获器(6)为自定义的异常捕获机制,用于监控常规数据库连接池(1)、备用数据库连接池(2)、连接有效性检测器(3)、数据库连接请求监视器(4)、连接请求优先级分析器(5)和数据库服务器(7),当捕获到数据库连接异常时,产生异常处理信息给用户。
地址 100191 北京市海淀区学院路37号
您可能感兴趣的专利