数据库连接池性能PK

JDK 1.7.0_10

数据库连接池1 thread2 threads5 threads10 threads20 threads50 threads100 threads
druid3096051,0289479628971,238
dbcp9241,4614,0624,0304,9085,50514,517
boneCP3,0472,0552,5493,8216,36712,86518,832
c3p04,0188,2068,89710,66712,36725,82238,681
proxool69124,7144,85111,90816,066(Error)19,568(Error)18,036(Error)
tomcat-jdbc4007401,8111,7071,6181,62411,905
jboss-datasource1,3691,1054,0023,0893,4833,66511,782

结果分析

  1. Druid是性能最好的数据库连接池,tomcat-jdbc和druid性能接近。
  2. proxool在激烈并发时会抛异常,完全不靠谱。在并发10的情况下,会使用11或者12个物理连接。
  3. c3p0和proxool都相当慢,慢到影响sql执行效率的地步。
  4. bonecp性能并不优越,采用LinkedTransferQueue并没有能够获得性能提升。
  5. jboss-datasource虽然稳定,但是性能很糟糕

版权声明:本文为android_bar原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。