- HikariCP數據庫連接池實戰
- 朱政科
- 2527字
- 2019-09-02 17:55:01
贊譽
無論是業務應用,還是數據庫中間層研發領域的工程師,數據庫連接池都是一個繞不開的話題。數據庫連接池就像空氣一樣重要且無處不在,但又設計精妙,使得開發者無需直接感受到它的存在。
經歷這如此漫長的發展之后,新一代的數據庫連接池翹楚,HikariCP已經受到越來越廣泛的關注,并且逐漸成為應用開發的首選。我主導的開源項目Apache ShardingSphere也因為它極致的性能而被采用為默認的數據庫連接池。
一直以來,業界都缺少一本關于HikariCP的專業書籍。本作的出現,終于彌補了這方面的缺失,希望讀者能夠和我一樣,通過閱讀本作更加全面的了解數據庫連接池的運行原理和實現機制。
張亮
京東數科數據研發負責人
Apache ShardingSphere發起人 & PPMC
《未來架構——從服務化到云原生》作者
連接池作為應用系統中最常用,也是壓力最大的組件庫之一,對整個系統的穩定起到了至關重要的作用。
APM的監控案例中,大量的性能和數據庫訪問、連接池使用有直接的聯系,也是系統性能的TOP 10根源之一。
HikariCP項目作為一個優秀的開源連接池項目,對它的深入學習和理解會很好的保證項目功能以及性能穩定。
通過本書,讀者能夠更好的了解HikariCP連接池的原理、配置和使用方法,學習到實用的工程實踐經驗。
吳晟tetrate.io founding engineer. Apache SkyWalking創始人&VP
Apache ShardingSphere原型作者&PPMC成員
Apache Incubator PMC成員
在數據庫的OLTP型的應用的特點往往是并發請求高,每秒處理的請求數多,單次請求的處理時間短?;谶@些特征,通??蛻舳伺c數據庫的連接通常建議使用連接池。
以PostgreSQL或Oracle數據庫為例在沒有連接池的情況下,用戶每次請求前都要和數據庫建立連接,數據庫要檢查來源客戶端是否滿足ACL列表需求,FORK backend process,使用配置好的認證方法與客戶端進行認證。
通常使用連接池的情況下QPS可以達到百萬級,而不使用連接池的情況下,QPS可能只有不到1萬??上攵贠LTP系統中連接池的重要性。
市面上開源的連接池很多,不同連接池有不同的特色,例如Druid不僅僅是個連接池,還支持了SQL請求的監控統計、SQL防火墻的能力。
HikariCP則是業界非常有名的一款以性能著稱的連接池,感謝作者給我們帶來了一本全面解析HikariCP的好書。本書對HikariCP的歷史、原理、應用實踐進行了非常詳細的介紹,相信通過本書可以對HikariCP以及連接池技術有非常深刻的了解。
周中正(德哥digoal)
PostgreSQL社區成員
數據是互聯網的核心價值,一款好用且高效的數據庫及相關中間件則是這份核心價值的重要保障,也是值得技術工程師們深入學習研究的對象。始于2013年的HikariCP,在眾多連接池中間件項目中,脫穎而出,得到越來越多互聯網公司及從業人員的青睞。本書作者對HikariCP的各種技術原理和實現細節有著深入的理解掌握,同時結合上工作中碰到的Linux內核、TCP網絡知識及性能調優實例經驗,內容深入淺出,行文也不乏風趣幽默,不光是一本系統性介紹HikariCP的寶典,更是借此打開中間件研發大門的最佳通道。希望本書的讀者們,無論是初學者,還是有進階提升的需求,都能仔細研讀并從中汲取到養分。
張聰
前阿里巴巴、滴滴出行架構師
杭州比智科技有限公司(奇點云)應用研發總監,首席架構師
數據庫連接池是程序員接觸最多但又最容易忽略的重要技術組件,并不是隨意找個數據庫池連接池就可以讓應用發揮最大功效,我們需要從性能、擴展性、連接池管理、監控以及社區的活躍度等進行甄別。本書不僅對市面上常見的一些連接池組件進行了全方位比較和分析,還重點以實戰的角度深入的介紹了高性能HikariCP連接池的使用、原理與維護。政科是我認識多年的好友,他在技術上面的嚴謹執著和一絲不茍,傳承的就是一種工匠精神,相信讀者通過本書定能受益匪淺。
程超
《高可用可伸縮微服務架構》聯合作者
《深入分布式緩存》聯合作者
作者以HikariCP入手,串起來點、線、面,行文生動,內容翔實豐滿。性能是第一個案例的入手點,并比較了各大數據庫連接池,最后在HikariCP配置、性能揭秘、監控等多方面展開描述。本書較好的詮釋了從原理到實踐這一思想,對于使用HikariCP的朋友可以成為居家旅行必備,對于了解整體池化技術或者性能優化的朋友,亦有他山之石之效。
于君澤
《深入分布式緩存》聯合作者
公眾號《技術瑣話》運營者
HikariCP作為Spring Boot 2.0的默認數據庫連接池,從不為人知到一日爆紅。乘著Spring Boot這艘大船,必定成為java開發的主流數據庫連接池。
《HikariCP實戰》通過庖丁解牛式的技術分解,對JDBC和數據庫連接池涉及到的技術實現細節及一些常見問題進行了梳理。通過閱讀本書可以對Java數據庫開發技術有一個更深入、系統的掌握。
構建一個高性能的網絡應用需要從網絡協議層、應用協議層進行全鏈路的推敲,另外連接池設計和線程工作模型的設計是關鍵點。數據庫連接池麻雀雖小五臟俱全,通過《HikariCP實戰》學習一個優秀的數據庫連接池產品及其相關的技術,從而掌握高性能網絡開發相關的部分技術是一個非常好的學習方式。
隨著開源軟件的成熟,作為淘寶去IOE后處理海量數據請求的最重要技術-分庫分表技術不再是大型互聯網公司的專享技術。如果你正遇到大數據量導致的數據庫性能瓶頸,或者希望到大型互聯網公司去工作,“自研集成HikariCP和Sharding-JDBC數據庫中間件”這一節請了解一下。
注:淘寶去IOE就是去掉IBM的小型機、Oracle數據庫、EMC存儲設備,代之在開源軟件基礎上開發的系統。
《HikariCP連接池實戰》不僅僅是告訴讀者如何使用HikariCP數據庫連接池,而是一本圍繞數據庫連接池相關技術展開的高性能Java開發技術實戰書,任何一個對技術有好奇心的Java開發者都可以從本書收獲良多。
楊俊
阿里技術專家
2014年阿里中間件性能挑戰賽JAVA組第二名
資源的復用能夠提升資源利用率,降低成本,其中數據庫連接池便是對數據庫連接資源進行復用。對數據庫連接池原理的了解及使用,基本上已經成了軟件從業人員必備技能。目前市面上已經有很多數據庫連接池的組件,在數據庫連接池紅海市場中,HikariCP作為后起之秀能夠實現浴血突圍,有非常多獨到之處。本書全面描述了HikariCP的獨到設計,在軟件的設計和性能優化等方面會給你打開一扇新的窗口。
何濤
網聯架構師
第一次看到這本書名時,就在想連接池有啥可講的,我天天都在使用,而當我翻開書閱讀時就被作者講述的阿里中間件實戰經驗深深吸引了,個個都是鮮活的高并發案例,而支撐這些高并發背后最有挑戰的就是數據庫連接池性能。作者通過Linux內核網絡參數調優和TCP原理入手,再通過JDBC剖析、SPI實戰、動態代理與字節碼技術等,由淺入深地介紹HikariCP的“簡單、極致、可靠”的設計哲學。
楊彪《分布式服務架構:原理、設計與實戰》作者
《可伸縮服務架構:框架與中間件》作者
原螞蟻金服專家,高級架構師
- TypeScript Essentials
- 復雜軟件設計之道:領域驅動設計全面解析與實戰
- JavaScript語言精髓與編程實踐(第3版)
- Java面向對象程序開發及實戰
- Java Web開發技術教程
- Java EE 7 Performance Tuning and Optimization
- Getting Started with Gulp
- PHP從入門到精通(第4版)(軟件開發視頻大講堂)
- Python從入門到精通
- 零基礎學C語言第2版
- Managing Microsoft Hybrid Clouds
- Web App Testing Using Knockout.JS
- IoT Projects with Bluetooth Low Energy
- Python機器學習與量化投資
- Web前端開發技術:HTML、CSS、JavaScript