數據庫連接池libzdb的使用
在上一個項目的性能測試中,發現瓶頸主要在對數據庫的操作上,原來的係統對數據庫操作隻有一個連接,而IO操作的效率相對於計算的效率而言簡直是一種不可容忍的。所以就產生了在這個項目中使用數據庫連接池這種想法。
由於時間比較緊張,碰巧在網上找到了一個開源的數據庫連接池,所以也就誕生了這篇博文。
當然對於技術實力比較強的團隊來說,可以會選擇根據自己的需要去自己去做一個連接池。
首先介紹一下這個libzdb ;
libzdb的官方說明的特性:
- Thread safe Database Connection Pool
- Connect to multiple database systems
- Zero runtime configuration, connect using a URL scheme
- Supports MySQL, PostgreSQL, SQLite and Oracle
得到官方的工程師的回答
它的幾個相關網站如下:
https://www.tildeslash.com/libzdb/# libzdb的offiCal website
libzdb是由這家公司開發的,所以質量應該可以值得信任
libzdb的代碼使用googlecode上代管
https://code.google.com/p/libzdb/
當時的安裝係統是redhatlinux ,直接下載代碼編譯安裝
./configure; make ; make install
當時的使用數據庫環境為oracle11gr2
基本的使用可以參看源代碼中的示例代碼,在test目錄下,但是
基本的使用為:
在程序啟動的時候,調用url_new 和 connectpool_new來初始化連接池
1、調用 connection_start啟動連接池
2、後麵的就可以在線程中或者在具體的處理流程中調用getcon來獲得連接,進而執行sql語句即可
3、在程序結束的時候要對應調用url_free和connection_pool_free來釋放資源
上麵就是對libzdb的基本介紹。
歡迎和各位進行交流,email:jiajiama0107@gmail.com
最後更新:2017-04-03 16:59:46