`

<转>Java数据库连接池比较

 
阅读更多

原文:http://blog.csdn.net/bbirdsky/article/details/8120456

现在常用的开源数据库连接池主要有c3p0dbcpproxool三种,其中:

Spring 推荐使用dbcp

Hibernate 推荐使用c3p0proxool

1、 DBCPApache

DBCP(DataBase connection pool)数据库连接池。是Apache上的一个 java连接池项目,也是tomcat使用的连接池组件。单独使用dbcp需要3个包:common-dbcp.jar,common-pool.jar,common-collections.jar由于建立数据库连接是一个非常耗时耗资源的行为,所以通过连接池预先同数据库建立一些连接,放在内存中,应用程序需要建立数据库连接时直接到连接池中申请一个就行,用完后再放回去。dbcp没有自动的去回收空闲连接的功能。

2、 C3P0

C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展。c3p0是异步操作的,缓慢的JDBC操作通过帮助进程完成。扩展这些操作可以有效的提升性能。目前使用它的开源项目有HibernateSpring等。c3p0有自动回收空闲连接功能。

3、 ProxoolSourceforge

Proxool是一种Java数据库连接池技术。是sourceforge下的一个开源项目,这个项目提供一个健壮、易用的连接池,最为关键的是这个连接池提供监控的功能,方便易用,便于发现连接泄漏的情况。

对比:

1> 相同时间内同等量的线程数和循环次数下:通过对三个连接池的三个标志性性能测试参数(Average,median,90%Line)进行比较发现:性能dbcp<=c3p0<proxool

2> 不同情况下的同一数据库连接池测试:通过观察 Average,median,90%Line三个参数发

现三个连接池的稳定性(三种连接池的三个测试参数的变化情况)依次:稳定性dbcp>=c3p0>proxool

结论:

通过对三种数据库连接池的性能测试发现,proxool c3p0能够更好的支持高并发,但是在稳定性方面略逊于 dpcp;

 

http://yingzhuo.iteye.com/blog/1047227

分享到:
评论

相关推荐

    JAVA数据库连接池

    JAVA数据库连接池&lt;br&gt; 能够减少对内存的消耗&lt;br&gt;提高了性能

    java 数据库连接池

    ### Java数据库连接池知识点 #### 一、概念与作用 在Java应用开发中,数据库连接是应用程序访问数据库的重要环节。数据库连接是一种宝贵的资源,频繁地创建和销毁连接会导致系统性能下降甚至崩溃。为了提高数据库...

    java手写数据库连接池

    数据库连接池是Java应用程序中非常重要的一个组件,它在提高应用性能、节省系统资源方面起着关键作用。本文将深入探讨如何使用Java手写数据库连接池,并基于maven进行项目构建。我们将分析四个核心类的功能,以及...

    java数据库连接池

    标题:Java数据库连接池 描述:本篇将详细介绍Java数据库连接池的概念,代码实现以及其在实际项目中的应用。数据库连接池是Java开发中优化数据库访问效率的关键技术,通过复用预创建的数据库连接,避免频繁创建和...

    Java jdbc数据库连接池总结

    Java JDBC 数据库连接池总结 Java 语言中,JDBC(Java DataBase Connection)是应用程序与数据库沟通的桥梁。在 Web 应用开发的早期,主要使用的技术是 CGIASPPHP 等。之后,Sun 公司推出了基于 Java 语言的 ...

    Java数据库连接池的使用示例

    Java数据库连接池是Java应用程序管理数据库连接的一种高效方式。它避免了每次需要访问数据库时创建新的连接,而是预先创建一定数量的连接并保存在池中,当程序需要时可以从池中获取,用完后归还,从而提高了系统性能...

    数据库连接池 java 整理

    数据库连接池在Java编程中扮演着至关重要的角色,特别是在处理大量并发访问的Web应用程序中。数据库连接池是一种管理数据库连接的机制,它允许程序高效地重复使用已建立的数据库连接,而不是每次需要时都创建新的...

    数据库连接池 使用方法

    通过在`server.xml`文件中配置`&lt;Resource&gt;`元素,可以轻松实现对数据库连接池的支持。 示例代码: ```xml &lt;Context path="" docBase="D:\_web" debug="0"&gt; &lt;Resource name="jdbc/OraDB" auth="SERVLET" type=...

    JAVA数据库连接池类

    本篇文章将深入解析一个自定义的JAVA数据库连接池类,帮助开发者更好地理解和运用这一关键技术。 首先,连接池的基本思想是预先创建一定数量的数据库连接,并存储在一个集合(如Vector)中,供应用程序按需获取和...

    JAVA 使用数据库连接池连接Oracle数据库全代码

    ### JAVA 使用数据库连接池连接Oracle数据库全代码解析 #### 一、概述 本文将详细介绍如何在Java项目中使用Apache DBCP(Database Connection Pool)来连接Oracle数据库,并提供完整的示例代码。通过这种方式,我们...

    JSP訳文--工具--Java

    Java IDL&lt;br&gt;用连接池提高Servlet访问数据库的效率&lt;br&gt;在 ASP 文件中调用 Servlet&lt;br&gt;Java Applet介绍&lt;br&gt;Applet与Servlet通讯的四种方法及其比较&lt;br&gt;在Applet中应用JDBC访问数据库&lt;br&gt;用XML与Servlet构建在线问答...

    使用连接池来进行数据库连接的具体步骤

    首先,我们要理解为什么需要使用数据库连接池。传统的JDBC连接方式会在每次请求时创建新的数据库连接,完成操作后关闭连接。这样的过程会消耗大量的系统资源,尤其是在高并发的环境中。而连接池则预先创建并维护一定...

    Tomcat下配置MySQL数据库连接池

    ### Tomcat下配置MySQL数据库连接池 #### 一、引言 在Web应用开发中,数据库连接池技术是一项重要的优化手段,它能够显著提高应用程序的性能和响应速度。本文将详细介绍如何在Apache Tomcat服务器环境下配置MySQL...

    java数据库连接池.rar

    总的来说,Java数据库连接池如C3P0和Druid,以及Spring的JdbcTemplate,都是为了优化数据库操作而设计的工具。它们各自有其特点和优势,开发者可以根据项目需求选择合适的技术。在使用过程中,充分理解和合理配置...

    数据库连接池java代码实现

    数据库连接池在Java中的实现是提高应用程序性能的关键技术之一,它通过复用已存在的数据库连接,避免了频繁创建和销毁连接导致的系统资源浪费。本文将深入探讨如何使用Java代码来实现一个简单的数据库连接池,并解释...

    轻量级java数据库连接池

    本项目提供了一个轻量级的Java数据库连接池实现,旨在简化开发过程,提高应用性能并降低资源消耗。下面将详细介绍这个轻量级Java数据库连接池的设计理念、工作原理以及如何使用。 1. **设计理念** 轻量级数据库...

    基于java的数据库连接池 BoneCP.zip

    Java数据库连接池(JDBC Connection Pool)是一种管理数据库连接的技术,它允许应用程序重复使用已建立的数据库连接,而不是每次需要时都创建新的连接。这种方式提高了应用程序的性能和效率,因为建立和关闭数据库...

Global site tag (gtag.js) - Google Analytics