號稱效能最好的JDBC串連池:HikariCP,jdbchikaricp

來源:互聯網
上載者:User

號稱效能最好的JDBC串連池:HikariCP,jdbchikaricp

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這個地址下載


相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.