Tomcat JDBC连接池(org.apache.tomcat.jdbc.pool)与Apache Commons DBCP连接池 区别
1.Commons DBCP 1.x是单线程。在分配对象或对象返回的时候,会锁定全部连接池。(不适用于Commons DBCP 2.x)
2.Commons DBCP 1.x在逻辑cpu数量增加或者并发县城增加时,性能可能会变的很慢。高并发系统受到的影响会更加明显(不适用于Commons DBCP 2.x)
3.Commons DBCP 拥有60多个类。tomcat-jdbc-pool核心只有8个类,而未来如果需求变更,那么tomcat JDBC连接池会改动更少。
4.Commons DBCP使用静态接口,需要对应的jre需要对应的DBCP 版本,否则会抛出 NoSuchMethodException异常
5.Tomcat JDBC连接池无需为库本身添加额外线程,就能获取异步连接。
6.Tomcat JDBC连接池使用 javax.sql.PooledConnection接口获取底层连接
7.Tomcat JDBC连接池 可以防止饥饿。如果池变空,线程将等待一个连接。当连接返回时,池就将唤醒正确的等待线程。
Tomcat JDBC连接池 特点;
1. 支持高并发环境与多核/CPU 系统。
2.

本文比较了Tomcat JDBC连接池与Apache Commons DBCP连接池的不同之处,包括并发性能、代码复杂度、线程安全性及配置灵活性等方面。
最低0.47元/天 解锁文章
1076

被折叠的 条评论
为什么被折叠?



