连接池

详情

定义

连接池是一种复用数据库连接的技术,可以看作一个缓存数据库连接对象的容器。它在应用启动时预先创建若干连接,并在需要时借出,使用完后归还。

工作流程

graph LR
A[应用请求数据库连接] --> B{连接池中有空闲连接?}
B -- 有 --> C[直接借出]
B -- 无 --> D[等待或新建(若未达上限)]
C --> E[执行SQL]
E --> F[归还连接到池中(不是关闭!)]

优点

  • 性能提升:避免重复建立连接的开销
  • 资源控制:限制最大连接数,防止数据库崩溃
  • 监控能力:如 Druid 可统计慢 SQL、活跃连接数等

常见连接池实现

方案类型优点缺点适用场景
HikariCP第三方连接池极快、轻量、配置简单功能较“纯粹”Spring Boot 默认推荐
Druid阿里开源连接池监控强大、SQL 防火墙、统计稍重企业级应用、需监控
C3P0、DBCP老牌连接池成熟稳定性能一般、配置复杂老项目维护

💡 注意:这些连接池仍然基于 JDBC!它们内部还是调用 DriverManager.getConnection() 创建连接,只是做了池化管理。

关联网络

演化日志

  • v0.1 (2026-01-31):初始版本