发明名称 一种数据库连接的管理方法及系统
摘要 本申请提供了一种数据库连接的管理方法及系统,以解决很多个连接池资源的管理问题。所述方法包括:接收客户端发来的数据库访问请求,并从该请求的内容中获取操作类型和目标连接的关键字;在内存的连接池管理表中查询与所述目标连接的关键字相匹配的连接池对象,并从查询到的连接池对象中获得连接资源;依据所述连接资源连接相应数据库,并将本次连接记录到数据库连接管理表中;依据所述操作类型执行相应的数据库操作,并将操作结果返回;检测所述连接资源管理表,并依据该检测对连接进行回收。本申请可将上千个连接池资源统一管理起来,对应的数据库连接都通过平台统一调度和控制,与现有技术中各连接池的相互独立管理相比,显著提高了访问效率。
申请公布号 CN103365929B 申请公布日期 2016.09.28
申请号 CN201210103841.6 申请日期 2012.04.10
申请人 阿里巴巴集团控股有限公司 发明人 谢宇
分类号 G06F17/30(2006.01)I 主分类号 G06F17/30(2006.01)I
代理机构 北京润泽恒知识产权代理有限公司 11319 代理人 苏培华
主权项 一种数据库连接的管理方法,其特征在于,包括:接收客户端发来的数据库访问请求,并从该请求的内容中获取操作类型和目标连接的关键字;在内存的连接池管理表中查询与所述目标连接的关键字相匹配的连接池对象,并从查询到的连接池对象中获得连接资源;其中,所述内存的连接池管理表中记录了对应每个数据库建立的连接池对象,连接池对象中的每个连接资源都用于连接到该连接池对象对应的数据库;依据所述连接资源连接相应数据库,并将本次连接记录到数据库连接管理表中;其中,所述数据库连接管理表中保存了连接到每个数据库的连接记录;依据所述操作类型执行相应的数据库操作,并将操作结果返回;检测所述数据库连接管理表,并依据该检测对连接进行回收,包括:统计当前连接的最后一次访问时间和访问次数;检测所述数据库连接管理表中对应当前连接池对象的连接数量是否超过配置的上限,如果超过,则启动异步线程进行连接的回收;其中,所述异步线程进行的连接的回收包括:检测所述当前连接池对象中超时的连接,并将所述超时的连接放入第一回收列表中;如果所述当前连接池对象中未超时的连接数量仍超过配置的上限,则所述异步线程进行的连接的回收还包括:计算预备回收数量;检测所述当前连接池对象中各连接的权重,并将符合所述预备回收数量的权重小的连接放入第二回收列表中;将所述第一回收列表和第二回收列表进行合并,并将合并后的回收列表中的连接进行销毁。
地址 英属开曼群岛大开曼资本大厦一座四层847号邮箱