LRU | 是 | 否 | 是 | 否 | 是 | 是 |
PSCache | 是 | 是 | 是 | 是 | 否 | 是 |
PSCache-Oracle-Optimized | 是 | 否 | 否 | 否 | 否 | 否 |
ExceptionSorter | 是 | 否 | 否 | 否 | 否 | 是 |
监控 | 是 | 否 | 否 | 否 | 是 | 否 |
扩展 |
是 | 否 | 否 | 否 | 否 | 否 |
LRU
LRU是一个性能关键指标,特别Oracle,每个Connection对应数据库端的一个进程,如果数据库连接池遵从LRU,有助于数据库服务器优化, 这是重要的指标。在测试中,Druid、DBCP、Proxool、JBoss是遵守LRU的。BoneCP、C3P0则不是。BoneCP在mock环 境下性能可能好,但在真实环境中则就不好了。
PSCache
PSCache是数据库连接池的关键指标。在Oracle中,类似SELECT NAME FROM USER WHERE ID = ?这样的SQL,启用PSCache和不启用PSCache的性能可能是相差一个数量级的。Proxool是不支持PSCache的数据库连接池,如果你 使用Oracle、SQL Server、DB2、Sybase这样支持游标的数据库,那你就完全不用考虑Proxool。
PSCache-Oracle-Optimized
Oracle 10系列的Driver,如果开启PSCache,会占用大量的内存,必须做特别的处理,启用内部的EnterImplicitCache等方法优化才能 够减少内存的占用。这个功能只有DruidDataSource有。如果你使用的是Oracle Jdbc,你应该毫不犹豫采用DruidDataSource。
ExceptionSorter
ExceptionSorter是一个很重要的容错特性,如果一个连接产生了一个不可恢复的错误,必须立刻从连接池中去掉,否则会连续产生大量错误。这个 特性,目前只有JBossDataSource和Druid实现。Druid的实现参考自JBossDataSource。
监控
DruidDataSource自身提供有NotEmptyWaitCount、PSCahcheHitCount等有用的监控属性,通过配置StatFilter能够监控SQL的执行情况。
扩展
DruidDataSource提供基于Filter-Chain模式的模式的扩展
转自:http://blog.csdn.net/a1178016652/article/details/45027619
相关推荐
本文将详细介绍几个常见的Java数据库连接池实现:C3P0、Druid、JNDI、DBCP、Proxool以及BoneCP,并结合Spring+MyBatis+maven环境下的应用示例进行解析。 1. C3P0: C3P0是一个开源的JDBC连接池,它实现了数据源和...
Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。 Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模...
Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。 Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模...
Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署...
Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。
Druid首先是一个数据库连接池。Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。
Druid是目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。 Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模...
Druid是阿里巴巴的开源产品,目前最好的数据库连接池,在功能、性能、扩展性方面,都超过其他数据库连接池,包括DBCP、C3P0、BoneCP、Proxool、JBoss DataSource。
在使用数据库连接池时,常见的连接池实现有DBCP、C3p0、TomcatJdbcPool、BoneCP和Druid等。以DBCP为例,使用它需要导入commons-dbcp.jar和commons-pool.jar包。在Maven项目中,需要在pom.xml配置文件中添加相应的...
Druid是一个由阿里巴巴开发的高性能数据库连接池,它在监控、性能和扩展性方面表现优秀,超越了如DBCP、C3P0、BoneCP等其他连接池。Druid已在阿里巴巴内部广泛部署,用于超过600个应用。 问题的背景在于SpringBoot3...
1. **C3P0** - **特点**:开源的JDBC连接池,支持JDBC3规范和JDBC2的标准扩展,被广泛应用于Hibernate、Spring等项目。 - **适用场景**:适用于小型系统或对性能要求不高的应用场景。 - **优缺点**:性能一般,但...
可基于任何第三方的数据库连接池,如DBCP、C3P0、 BoneCP、Druid等。 以jar包形式提供服务,无proxy代理层,无需额外部署,无其他依赖。 分片策略灵活,可支持等号、between、in等多维度分片,也可支持多分片键。 ...
工作在 JDBC 层面上,作为增强型 JDBC 驱动,兼容所有基于 JDBC 的 ORM 框架,如 JPA, Hibernate, Mybatis, Spring JDBC Template 等,并且可以与任意的数据库连接池配合使用,如 DBCP, C3P0, BoneCP, Druid, ...
支持任何第三方的数据库连接池,如 DBCP、C3P0、BoneCP、Druid、HikariCP 等。 ShardingSphere-Proxy ShardingSphere-Proxy 是一个轻量级 Java 框架,在 Java 的 JDBC 层提供额外服务。它使用客户端直连数据库,以...
常见的数据源有DBCP、C3P0、BoneCP、Druid等。 ##### 4.1 数据源的作用 数据源的主要作用是提高应用程序的性能,通过预建立多个数据库连接,使得每次需要使用数据库时不需要重新创建连接,而是从连接池中获取已有的...
2. **灵活性与扩展性**:支持多种数据库连接池,包括DBCP、C3P0、BoneCP、Druid等,并且理论上支持所有符合JDBC规范的数据库,尽管目前主要支持MySQL,但已规划支持Oracle、SQLServer等数据库。 3. **分片策略多样...
常见的数据源(连接池)有 DBCP、C3P0、BoneCP、Druid 等。 手动创建数据源 手动创建数据源需要导入数据源的坐标和数据库驱动坐标,然后创建数据源对象,设置数据源的基本连接数据。例如,使用 C3P0 连接池需要...
ShardingJDBC兼容所有的基于JDBC的ORM框架,包括但不限于JPA、Hibernate、Mybatis以及各种流行的数据库连接池,如DBCP、C3P0、BoneCP、Druid和HikariCP等,且适用于几乎所有的关系型数据库。 通过ShardingJDBC实现...
**性能对比**:Druid > C3P0 > DBCP。特别提到 BoneCP,其性能远超其他连接池,但目前使用较少。 **示例代码**:在 `application.properties` 中配置 Druid 数据源。 ```properties spring.datasource.type=...