0 课程地址
https://coding.imooc.com/lesson/380.html#mid=28226
1 浓缩精华
1.1 SpringBoot2 HikariCP的配置
spring.datasource.hikari.connection-timeout 客户端等待连接池连接的最大毫秒数
spring.datasource.hikari.minimum-idle连接池中维护的最小空闲连接数
spring.datasource.hikari.maximum-pool-size 最大池大小
spring.datasource.hikari.idle-timeout 允许连接在连接池中空闲的最长时间(毫秒)
spring.datasource.hikari.max-lifetime 池中连接关闭后的最长生命周期(毫秒)
spring.datasource.hikari.auto-commit从池返回的连接的默认自动提交行为(默认为true)
2 个人关注
2.1 个人关注
3.6
3 课程内容
3.1 数据库连接池能够做什么
连接复用:通过建立一个数据库连接池以及一套连接使用管理策略,使得一个数据库连接可以得到高效、安全的复用,避免了数据库连接频繁建立、关闭的开销。
较为频繁的使用数据库时,数据库连接的使用称为系统的瓶颈,所以需要数据库连接池
3.2 数据库连接池的基本原理
数据库连接池的基本原理是在内部对象池中维护一定数量的数据库连接,并对外暴露数据库连接获取和返回方法。
getConnection 得到数据库连接
releaseConnection 释放数据库链接,并不关闭,管理回收下次使用(无框架的时候进行这getConnection和releaseConnection)
3.3 使用数据库连接池的优势
更快的系统响应(避免了数据库连接创建销毁的开销,提升了系统效应速度)
统一的连接管理 (避免数据库泄露,占用超时设定,强制回收被占用的连接)
资源重用
优化的资源分配
3.4 SpringBoot2默认的数据库连接池
SpringBoot1中默认使用tomcat数据库连接池,在SpringBoot2中已经换成了HikaricP HiKariCP 是数据库连接池的一个后起之秀,号称性能最好,可以完美地PK 掉其他连接池,是一个高性能的JDBC连接池,基于BoneCP做了不少的改进和优化。
3.5 SpringBoot2 HikariCP的配置
spring.datasource.hikari.connection-timeout 客户端等待连接池连接的最大毫秒数
spring.datasource.hikari.minimum-idle连接池中维护的最小空闲连接数
spring.datasource.hikari.maximum-pool-size 最大池大小
spring.datasource.hikari.idle-timeout 允许连接在连接池中空闲的最长时间(毫秒)
spring.datasource.hikari.max-lifetime 池中连接关闭后的最长生命周期(毫秒)
spring.datasource.hikari.auto-commit从池返回的连接的默认自动提交行为(默认为true)
3.6 SpringBoot2 如何选择连接池
优先选择hikaricp,不存在依赖的话,选择tomcat连接池,如果tomcat连接池也不存在,会继续选择优先级更低的commons,db2等连接池。