数据库链接池

简介: 数据库连接池的优势

2023:07:16数据库连接池
数据库连接池是个容器,负责分配,管理数据库连接对象(Connection)
它允许应用程序重复使用一个现有的数据库链接,而不是在重新建立一个
而且释放空闲时间超过最大空闲时间的链接,来避免因为没有释放链接而引起的数据库链接遗漏

没有数据库链接对象的情况:
在执行sql语句的时候首先会创建一个数据库链接对象,在sql语句执行完成之后会关闭链接对象来释放资源
这样每一次执行sql语句都需要循环往复这个过程比较浪费资源

具有数据库链接对象的情况:
程序在启动的时候会初始化一定数量的连接对象,客户端在准备执行sql语句的时候会从这里面选一个连接,然后执行sql语句,在sql语句执行完成后会把这个链接归还给连接池
如果客户端在拿到链接之后一链接一直处空闲状态(链接没有访问操作数据库),数据库链接池会检测这个链接的空闲时间一旦超过最大预设空闲时间,这个链接将会释放归还给连接池(避免了链接越用越少的情况)

综上诉述
连接池的优势
1.资源重用(复用链接)
2.提升系统响应速度(数据库连接池在初始化过程中,已经创建了若干数据库连接放于池内备用。此时连接池的初始化操作均已完成。对于客户端请求直接利用现有可用连接,避免了数据库连接初始化和释放过程的时间开销,从而缩减了系统整体响应时间。)
3.避免数据库链接遗漏(超过最大空闲时间将会被收回,避免常规数据库链接操作中可能出现的遗漏)

连接池的实现:
标准接口:DataSource
官方提供接口,第三方组织实现
常见的有Druid(念zhao ei de(德鲁伊) 还有Hikari(springboot默认 hei ka rei(追光者))

且切换连接池:
直接引入对应的依赖即可

总结。
连接池就是为了避免重复的创建数据库连接而造成的性能下降和资源的浪费
注意:
保存一定量的链接是要消耗内存的链接应该不会创建太多

有问题可在评论区指出(多谢指教)

目录
相关文章
|
6月前
|
SQL Java 数据库连接
(数据库链接池)spring内容复习7月16日笔记
(数据库链接池)spring内容复习7月16日笔记
32 0
|
6月前
|
监控 druid Java
数据库链接池HikariCP、Druid
数据库链接池HikariCP、Druid
|
6月前
|
SQL 缓存 关系型数据库
数据库链接池终于搞对了,这次直接从100ms优化到3ms
数据库连接池的配置是开发者们常常搞出坑的地方,在配置数据库连接池时,有几个可以说是和直觉背道而驰的原则需要明确。
|
SQL 缓存 关系型数据库
数据库链接池终于搞对了,这次直接从100ms优化到3ms
数据库连接池的配置是开发者们常常搞出坑的地方,在配置数据库连接池时,有几个可以说是和直觉背道而驰的原则需要明确。
|
Java 数据库连接 数据库
hibernate链接数据库链接池c3p0配置
<div class="dp-highlighter bg_html" style="font-family:Consolas,'Courier New',Courier,mono,serif; width:700.909px; overflow:auto; padding-top:1px; color:rgb(51,51,51); line-height:26px; margin:18p
1219 0
|
7天前
|
SQL 关系型数据库 MySQL
12 PHP配置数据库MySQL
路老师分享了PHP操作MySQL数据库的方法,包括安装并连接MySQL服务器、选择数据库、执行SQL语句(如插入、更新、删除和查询),以及将结果集返回到数组。通过具体示例代码,详细介绍了每一步的操作流程,帮助读者快速入门PHP与MySQL的交互。
23 1
|
9天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
24 4
|
16天前
|
监控 关系型数据库 MySQL
数据库优化:MySQL索引策略与查询性能调优实战
【10月更文挑战第27天】本文深入探讨了MySQL的索引策略和查询性能调优技巧。通过介绍B-Tree索引、哈希索引和全文索引等不同类型,以及如何创建和维护索引,结合实战案例分析查询执行计划,帮助读者掌握提升查询性能的方法。定期优化索引和调整查询语句是提高数据库性能的关键。
83 1