数据库链接池

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

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

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

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

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

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

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

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

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

目录
相关文章
|
7月前
|
SQL Java 数据库连接
(数据库链接池)spring内容复习7月16日笔记
(数据库链接池)spring内容复习7月16日笔记
34 0
|
7月前
|
监控 druid Java
数据库链接池HikariCP、Druid
数据库链接池HikariCP、Druid
|
7月前
|
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
1222 0
|
3天前
|
关系型数据库 MySQL 数据库
Python处理数据库:MySQL与SQLite详解 | python小知识
本文详细介绍了如何使用Python操作MySQL和SQLite数据库,包括安装必要的库、连接数据库、执行增删改查等基本操作,适合初学者快速上手。
48 15
|
4天前
|
关系型数据库 MySQL 数据库
数据库数据恢复—MYSQL数据库文件损坏的数据恢复案例
mysql数据库文件ibdata1、MYI、MYD损坏。 故障表现:1、数据库无法进行查询等操作;2、使用mysqlcheck和myisamchk无法修复数据库。
|
8天前
|
SQL 关系型数据库 MySQL
MySQL导入.sql文件后数据库乱码问题
本文分析了导入.sql文件后数据库备注出现乱码的原因,包括字符集不匹配、备注内容编码问题及MySQL版本或配置问题,并提供了详细的解决步骤,如检查和统一字符集设置、修改客户端连接方式、检查MySQL配置等,确保导入过程顺利。

热门文章

最新文章