【技术实现步骤摘要】
数据库连接复用方法和装置
本专利技术涉及计算机
,尤其涉及一种数据库连接复用方法和装置。
技术介绍
SQL (Structured Query Language,结构化查询语言)是一种数据库查询和程序设计语言,用于存取数据以及管理关系数据库系统。MySQL是一种关系数据库管理系统,关系数据库基于关系数据模型将数据保存在不同的表中,在保证灵活性的同时又保持了一定的存取速度。现有的MySQL中,通常采用基于线程的连接复用技术,即将数据库连接作为对象存储在一个容器中,数据库连接建立后,不同的数据库访问请求就可以共享这些数据库连接。基于线程的连接复用技术的主要机制如下:首先建立数据库连接池对象,并创建好指定数量的数据库连接;为数据库访问请求在连接池中寻找一个空闲的连接;如果无法在数据库连接池中找到空闲的数据库连接,且数据库连接的数量没有超过预设的阈值,则创建一个新的数据库连接。复用已经建立的数据库连接,虽然能减少建立数据库连接的开销,但专利技术人发现这种复用技术至少具有如下缺点:由于每个客户端始终占用一个线程,如果客户端没有关闭或者断开该连接,则该连接一 ...
【技术保护点】
一种数据库连接复用方法,其特征在于,包括:第一进程接收客户端发送的第一连接请求信息,并将所述第一连接请求信息发送给第二进程;所述第二进程根据所述第一连接请求信息处理连接复用逻辑,得到包含目的数据库路径的第二连接信息,并将所述第二连接信息发送给第三进程;所述第三进程将所述第二连接信息发送给数据库管理系统,以使所述数据库管理系统根据所述第二连接信息返回请求的数据至所述客户端;所述第一进程、第二进程和所述第三进程之间的通信使用唯一的连接标识ID来标识每个连接。
【技术特征摘要】
1.一种数据库连接复用方法,其特征在于,包括: 第一进程接收客户端发送的第一连接请求信息,并将所述第一连接请求信息发送给第二进程; 所述第二进程根据所述第一连接请求信息处理连接复用逻辑,得到包含目的数据库路径的第二连接信息,并将所述第二连接信息发送给第三进程; 所述第三进程将所述第二连接信息发送给数据库管理系统,以使所述数据库管理系统根据所述第二连接信息返回请求的数据至所述客户端; 所述第一进程、第二进程和所述第三进程之间的通信使用唯一的连接标识ID来标识每个连接。2.根据权利要求1所述的数据库连接复用方法,其特征在于,所述第一进程与所述第二进程之间,以及所述第二进程与所述第三进程之间的通信方式均为异步通信方式。3.根据权利要求1或2所述的数据库连接复用方法,其特征在于,在所述第一进程接收客户端发送的数据库连接请求后,还包括: 所述第一进程为每个连接分配唯一的连接标识ID。4.根据权利要求1或2所述的数据库连接复用方法,其特征在于,所述数据库管理系统根据所述第二连接信息返回请求的数据至所述客户端,包括: 所述第三进程接收所述数据库管理系统返回的所述请求的数据,并将所述请求的数据发送给第二进程; 所述第二进程接收所述请求的数据,根据所述连接复用逻辑查找对应的所述客户端,并将所述请求的数据发送至所述第一进程,以使所述第一进程将所述请求的数据发送给所述客户端。5.根据权利要求3所述的数据库连接复用方法,其特征在于,所述第一进程、第二进程和第三进程之间通过管道与共享内存进行进程间通信,所述第一进程将生成的所述...
【专利技术属性】
技术研发人员:程彬,李宇,
申请(专利权)人:深圳市腾讯计算机系统有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。