阿里巴巴開源連接池 Druid 發布 1.0.12 版本

jopen 9年前發布 | 20K 次閱讀 Druid

修復用戶反饋的bug,完善多種sql語法支持,改進sqlwall誤報,申請發布druid-1.0.12版本。
功能點改進和需求管理參見github自帶的issues: https://github.com/alibaba/druid/issues?state=closed
這個版本的功能點如下:

Bug
1. 修復SQLWALL constArithmeticAllow、caseConditionConstAllow、conditionOpBitwseAllow開關失效的問題。
2. 修復register mbean時的拋NPE異常的問題。
3. 修復異步關閉連接的bug。
4. 修復SQL注釋解析不準確的問題。
5. 修復sql關鍵字order做表名、字段名等時解析失敗的問題。
6. 修復SQL字符串中含有轉義雙引號導致解析失敗的問題。
7. 修復對于MySQL 含有轉義字符\\的字符串解析錯誤的問題。
8. 修復PostgreSQL select distinct語法解析錯誤的問題。


Improvement
1. 連接池支持PostgreSQL ExceptionSorter 和 ValidConnectionChecker;
2. 優化MySqlExceptionSorter;
3. 優化OracleValidConnectionChecker,解決訪問量很大的情況下,testOnBrorrow時申請連接開啟新線程導致服務器崩潰的問題;
4. 連接池并發優化;
5. JDBCUtils支持DM和KINGBASE數據庫;
6. WallVisitorUtils preVisitCheck添加針對SQLServer COMMIT、ROLLBACK語句是否允許的開關;
7. 完善SQLServer語法支持:支持OFFSET FETCH CLAUSE;
8. 完善PostgreSQL語法支持:支持 DROP TABLE IF NOT EXISTS等; 

9. 修改register driver mbean error log level 從error到warn。

Druid文檔 https://github.com/alibaba/druid/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98

Druid是一個JDBC組件,它包括三部分: 

  • DruidDriver 代理Driver,能夠提供基于Filter-Chain模式的插件體系。 

  • DruidDataSource 高效可管理的數據庫連接池。 

  • SQLParser 

Druid可以做什么? 

1) 可以監控數據庫訪問性能,Druid內置提供了一個功能強大的StatFilter插件,能夠詳細統計SQL的執行性能,這對于線上分析數據庫訪問性能有幫助。 

2) 替換DBCP和C3P0。Druid提供了一個高效、功能強大、可擴展性好的數據庫連接池。 

3) 數據庫密碼加密。直接把數據庫密碼寫在配置文件中,這是不好的行為,容易導致安全問題。DruidDruiver和DruidDataSource都支持PasswordCallback。 

4) SQL執行日志,Druid提供了不同的LogFilter,能夠支持Common-Logging、Log4j和JdkLog,你可以按需要選擇相應的LogFilter,監控你應用的數據庫訪問情況。 

擴展JDBC,如果你要對JDBC層有編程的需求,可以通過Druid提供的Filter-Chain機制,很方便編寫JDBC層的擴展插件。

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!