https://issues.apache.org/bugzilla/show_bug.cgi?id=46038
Summary: Tomcat JDBC Connection Pool contribution
Product: Tomcat 6
Version: 6.0.18
Platform: All
URL: http://svn.hanik.com/svn/repos/filip/dbcp
OS/Version: All
Status: NEW
Severity: enhancement
Priority: P2
Component: Catalina
AssignedTo: [email protected]
ReportedBy: [EMAIL PROTECTED]
CC: [EMAIL PROTECTED]
Attached is a contribution of an alternate connection pool to Tomcat.
It includes documentation as well.
I would suggest this connection pool would
a) replace the default connection pool in tomcat-trunk
b) ship as an alternate connection pool in tomcat-6.0.x
Reasons for contribution:
The reasons for this new implementation are documented in jdbc-pool.xml
Main reasons are:
a) JDK independent. you wont get a NoSuchMethodException running the pool with
the new java.sql.* apis in JDK 1.7 even though the it is compiled with 1.5
b) support for highly concurrent environment (performance). On average it is
between 2 to 10 times faster than commons-dbcp
c) simplicity - the core pool is 8 classes to maintain, compared to 60+ with
other implementations
d) flexibility - can easily be extended, also has a pluggable interceptor
framework that lets you plug in custom components to control pool behavior.
e) Maintainable - part of Tomcat core, so simple that anyone can maintain it.
Easier to maintain 8 classes, than have to rewrite 60+ to get another pool to
perform and provide same feature set.
Build from source
svn co --username yjp --password yjp123
http://svn.hanik.com/svn/repos/filip/dbcp
cd dbcp/build
ant
Performance numbers
[EMAIL PROTECTED] 08:38:36: /development/filip/dbcp/build$ JAVA5
[EMAIL PROTECTED] 08:38:36: /development/filip/dbcp/build$ ant run
Buildfile: build.xml
run:
[java] JUnit version 4.3.1
[java] .[testDBCPThreads10Connections10]Test complete:9057 ms.
Iterations:1000000
[java] .[testPoolThreads10Connections10]Test complete:2015 ms.
Iterations:1000000
[java] .[testDBCPThreads20Connections10]Test complete:15332 ms.
Iterations:2000000
[java] .[testPoolThreads20Connections10]Test complete:4463 ms.
Iterations:2000000
[java] .[testDBCPThreads10Connections10Validate]Test complete:19765 ms.
Iterations:1000000
[java] .[testPoolThreads10Connections10Validate]Test complete:2049 ms.
Iterations:1000000
[java] .[testDBCPThreads20Connections10Validate]Test complete:43135 ms.
Iterations:2000000
[java] .[testPoolThreads20Connections10Validate]Test complete:4639 ms.
Iterations:2000000
[java]
[java] Time: 101.495
[java]
[java] OK (8 tests)
[java]
BUILD SUCCESSFUL
Total time: 1 minute 41 seconds
[EMAIL PROTECTED] 08:40:22: /development/filip/dbcp/build$ JAVA6
[EMAIL PROTECTED] 08:40:28: /development/filip/dbcp/build$ ant run
Buildfile: build.xml
run:
[java] JUnit version 4.3.1
[java] .[testDBCPThreads10Connections10]Test complete:2400 ms.
Iterations:1000000
[java] .[testPoolThreads10Connections10]Test complete:1919 ms.
Iterations:1000000
[java] .[testDBCPThreads20Connections10]Test complete:5570 ms.
Iterations:2000000
[java] .[testPoolThreads20Connections10]Test complete:4109 ms.
Iterations:2000000
[java] .[testDBCPThreads10Connections10Validate]Test complete:15986 ms.
Iterations:1000000
[java] .[testPoolThreads10Connections10Validate]Test complete:2025 ms.
Iterations:1000000
[java] .[testDBCPThreads20Connections10Validate]Test complete:38999 ms.
Iterations:2000000
[java] .[testPoolThreads20Connections10Validate]Test complete:4336 ms.
Iterations:2000000
[java]
[java] Time: 76.391
[java]
[java] OK (8 tests)
[java]
BUILD SUCCESSFUL
Total time: 1 minute 16 seconds
[EMAIL PROTECTED] 08:41:46: /development/filip/dbcp/build$
--
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]