欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Spring Boot Mysql 版本驅(qū)動連接池方案選擇

 更新時間:2019年08月28日 11:29:20   作者:襄垣  
這篇文章主要介紹了詳解Spring Boot Mysql 版本驅(qū)動連接池方案選擇,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

國內(nèi)環(huán)境下,用Mysql還是比較多的。這里簡單的總結(jié)了一下,如有繆誤,還請指正。

Mysql.connect

引入mysql-connector-java包,協(xié)議為GPL2.0,該協(xié)議具有傳染性,即:一旦使用(調(diào)用)GPL的庫,你的軟件將被感染為GPL的軟件(主程序)。完全不具有商業(yè)友好特性。如果有顧慮,可以使用mariadb-java-client進(jìn)行替代,見mariadb-connector-j,路徑是org.mariadb.jdbc.Driver

引入JDBC驅(qū)動程序

<dependency>
  <groupId>mysql</groupId>
  <artifactId>mysql-connector-java</artifactId>
  <version>${version}</version>
</dependency>

JDBC驅(qū)動程序版本選擇

5.1.**版本

  • 建議使用。
  • 長期維護(hù)更新的版本,最新一版是Jul, 2019維護(hù)的5.1.48版本。
  • 對應(yīng)mysql版本5.6、5.7、8.0都可以放心使用

6.0.**版本

  • 禁止使用。
  • 只有幾個release版本,沒有安全感,已經(jīng)有一段時間不維護(hù)。
  • 與5.1.**存在一些兼容性的問題。

8.0.**版本

  • 酌情使用。
  • 尚未經(jīng)過驗證,該版本主要為了兼容mysql8.0。
  • 更新十分頻繁。
  • 需要JDK8以上。

Maven 倉庫

Mysql版本建議

  • 選擇6個月以上的穩(wěn)定版,選擇開源的社區(qū)版的穩(wěn)定版GA版本。
  • 考慮開發(fā)人員開發(fā)程序使用的版本是否兼容你選的版本。
  • 優(yōu)先企業(yè)非核心業(yè)務(wù)采用新版本的數(shù)據(jù)庫GA版本軟件。
  • 需要嘗試新特性的,多關(guān)注Mysql的版本發(fā)布通知。
  • 用到JSON等新特性的,可以考慮5.7。
  • 保守的可以選擇5.6。
  • 一般云服務(wù)提供的版本大多是5.6、5.7。

JDBC連接池選擇

選擇連接池時,需要考慮的因素很多,比如綜合性能,可靠性,穩(wěn)定性,擴(kuò)展性等。網(wǎng)上也有很多測評的文章,這里不多做介紹,把結(jié)論說一下。

參考
Druid之各種連接池性能對比測試
HikariCP基準(zhǔn)測試

性能

  • hikariCP>druid>tomcat-jdbc>dbcp>c3p0
  • hikariCP 的性能十分優(yōu)異,號稱java平臺最快的數(shù)據(jù)庫連接池。
  • hikariCP在并發(fā)較高的情況下,性能基本上沒有下降。
  • 從字節(jié)碼的維度優(yōu)化代碼。讓方法盡量在35個字節(jié)碼一下,來提升jvm的處理效率。 (default inline threshold for a JVM running the server Hotspot compiler is 35 bytecodes )

擴(kuò)展性

  • 阿里巴巴出品的druid功能最為全面。
  • 可視化監(jiān)控,統(tǒng)計數(shù)據(jù)較為全面。
  • 當(dāng)然,如果使用的是云數(shù)據(jù)庫,云數(shù)據(jù)庫已經(jīng)自帶了大量監(jiān)控指標(biāo)。

總結(jié)

如果對監(jiān)控和跟蹤沒有要求,可以使用hikariCP, 如果有監(jiān)控方面的需求,可以使用druid。我公司主要是用云數(shù)據(jù)庫,所以基本都是使用hikariCP,優(yōu)化一下配置,性能會很棒。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論