[发明专利]数据库中间件及其实现客户端与服务器连接的方法有效
申请号: | 202011537589.0 | 申请日: | 2020-12-23 |
公开(公告)号: | CN112612834B | 公开(公告)日: | 2022-08-02 |
发明(设计)人: | 周健身;苗健;卢健;张鲁敏;李鹏 | 申请(专利权)人: | 瀚高基础软件股份有限公司 |
主分类号: | G06F16/25 | 分类号: | G06F16/25;G06F9/50 |
代理公司: | 工业和信息化部电子专利中心 11010 | 代理人: | 罗丹 |
地址: | 250101 山东省济南市高新*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 中间件 及其 实现 客户端 服务器 连接 方法 | ||
1.一种数据库中间件实现客户端与服务器连接的方法,其特征在于,包括:
创建最小空闲服务子进程数的服务子进程;
所述服务子进程接收客户端的连接请求,并根据所述连接请求将所述客户端连接至服务器;
当空闲的服务子进程的个数小于所述最小空闲服务子进程数时,再次创建所述最小空闲子进程数的服务子进程,直至达到最大服务子进程数限制;
当空闲的服务子进程的个数大于最大空闲服务子进程数时,回收部分空闲的服务子进程。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
初始化一个所有进程共享的全局连接池,所述全局连接池包括多个连接槽位,每个所述连接槽位用于存储一条客户端与服务器之间的连接信息,所述连接信息包括客户端的用户名、服务器的数据库名、访问时间、连接标识信息。
3.如权利要求2所述的方法,其特征在于,所述根据所述连接请求将所述客户端连接至服务器,包括:
基于所述连接请求,在所述全局连接池中查找是否有可复用的连接,若有,则复用该连接,否则,创建连接,并将连接信息保存至所述全局连接池。
4.如权利要求2所述的方法,其特征在于,所述方法还包括:
当所述全局连接池中的所有连接槽位均被占用时,检测所述全局连接池中是否存在空闲的连接,若有,则剔除空闲的相同连接次数最多的连接,否则,剔除相同连接次数最多的连接。
5.如权利要求4所述的方法,其特征在于,所述剔除部分空闲的连接,包括:
当存在多个空闲的相同连接次数最多的连接,则剔除空闲的相同连接次数最多且访问时间最远的连接;
当存在多个相同连接次数最多的连接,则剔除相同连接次数最多且访问时间最远的连接。
6.如权利要求2所述的方法,其特征在于,所述方法,还包括:
定期检测所述全局连接池中各个连接的最近访问时间;
当所述最近访问时间超过预设时间时,剔除该连接。
7.如权利要求2所述的方法,其特征在于,所述方法,还包括:
当所述服务子进程的个数超过所述最大服务子进程数,向当前连接请求对应的客户端返回连接超过最大限制连接数的消息。
8.如权利要求4所述的方法,其特征在于,所述连接包括事务连接;
所述方法还包括:
当所述连接为事务连接,所述事务连接执行完后将该事务连接设置为空闲。
9.一种数据库中间件,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如权利要求1至8中任一项所述的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于瀚高基础软件股份有限公司,未经瀚高基础软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011537589.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种拆卸式腔镜吻合器
- 下一篇:一种新型阻火栅缠绕机