号称性能最好的JDBC连接池:HikariCP
HikariCP号称是现在性能最好的JDBC连接池组件,具体的性能到底如何,我也没有仔细的测试过,不过从它现在的发展来看,其可能确实如它宣传的那样其性能高过目前所有的连接池组件。之前对连接池的记忆一直都是C3P0、DBCP、BoneCP,这三者中BoneCP的性能是最好的,C3P0的性能在现在来说确实是非常差的了,好像C3P0很久都没有更新了,所以我们应该杜绝在项目中使用C3P0,至于是否要使用HikariCP,我觉得可以尝试。HikariCP毕竟是才出来不久,其性能到底如何,也需要实践的检验,若是担心新东西有坑,我推荐使用BoneCP。Spring现在也集成了HikariCP,所以我觉得很有尝试它的必要。前不久我在项目中使用了HikariCP,也没出现什么问题,运行比较稳定。
HikariCP在github上的地址:https://github.com/brettwooldridge/HikariCP
下面是2张HikariCP和其他连接池组件的性能比较图片:
在其网站上可以看到详细的使用文档,下面是常规的使用方法:
import java.sql.Connection; import java.sql.SQLException; import com.zaxxer.hikari.HikariConfig; import com.zaxxer.hikari.HikariDataSource; /** * HikariCP使用 * @author CoolKing * */ public class DataSource { private HikariDataSource ds; /** * 初始化连接池 * @param minimum * @param Maximum */ public void init(int minimum,int Maximum){ //连接池配置 HikariConfig config = new HikariConfig(); config.setDriverClassName("com.mysql.jdbc.Driver"); config.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/testdb?user=root&password=123456&useUnicode=true&characterEncoding=utf8"); config.addDataSourceProperty("cachePrepStmts", true); config.addDataSourceProperty("prepStmtCacheSize", 500); config.addDataSourceProperty("prepStmtCacheSqlLimit", 2048); config.setConnectionTestQuery("SELECT 1"); config.setAutoCommit(true); //池中最小空闲链接数量 config.setMinimumIdle(minimum); //池中最大链接数量 config.setMaximumPoolSize(Maximum); ds = new HikariDataSource(config); } /** * 销毁连接池 */ public void shutdown(){ ds.shutdown(); } /** * 从连接池中获取链接 * @return */ public Connection getConnection(){ try { return ds.getConnection(); } catch (SQLException e) { e.printStackTrace(); ds.resumePool(); return null; } } public static void main(String[] args) throws SQLException { DataSource ds = new DataSource(); ds.init(10, 50); Connection conn = ds.getConnection(); //...... //最后关闭链接 conn.close(); } }另外,HikariCP需要依赖下面几个jar
slf4j-api-1.7.12.jar
metrics-core-3.0.2.jar
metrics-healthchecks-3.1.2.jar
javassist-3.19.0-GA.jar
HikariCP-2.3.5.jar
若使用MySQL则还需要mysql-connector-java-5.0.8-bin.jar
以上使用HikariCP需要的jar可以到http://download.csdn.net/detail/abc_key/8790543这个地址下载
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。