數據庫連接池
數據庫連接池負責分配、管理和釋放數據庫連接,它允許應用程序重復使用一個現有的數據庫連接,而不是再重新建立一個;釋放空閑時間超過最大空閑時間的數據庫連接來避免因為沒有釋放數據庫連接而引起的數據庫連接遺漏。這項技術能明顯提高對數據庫操作的性能。
數據庫連接池的工作機制
數據庫連接池負責分配、管理和釋放數據庫連接,它允許應用程序重復使用一個現有的數據庫連接,而再不是重新建立一個;釋放空閑時間超過最大空閑時間的數據庫連接來避免因為沒有釋放數據庫連接而引起的數據庫連接遺漏。這項技術能明顯提高對數據庫操作的性能。
數據庫連接池在初始化時將創建一定數量的數據庫連接放到連接池中,這些數據庫連接的數量是由最小數據庫連接數來設定的。無論這些數據庫連接是否被使用,連接池都將一直保證至少擁有這么多的連接數量。連接池的最大數據庫連接數量限定了這個連接池能占有的最大連接數,當應用程序向連接池請求的連接數超過最大連接數量時,這些請求將被加入到等待隊列中。
數據庫連接池的最小連接數和最大連接數的設置要考慮到下列幾個因素:
1)最小連接數是連接池一直保持的數據庫連接,所以如果應用程序對數據庫連接的使用量不大,將會有大量的數據庫連接資源被浪費;
2)最大連接數是連接池能申請的最大連接數,如果數據庫連接請求超過此數,后面的數據庫連接請求將被加入到等待隊列中,這會影響之后的數據庫操作。
3)如果最小連接數與最大連接數相差太大,那么最先的連接請求將會獲利,之后超過最小連接數量的連接請求等價于建立一個新的數據庫連接。不過,這些大于最小連接數的數據庫連接在使用完不會馬上被釋放,它將被放到連接池中等待重復使用或是空閑超時后被釋放。
-
數據庫
+關注
關注
7文章
3848瀏覽量
64691
發布評論請先 登錄
相關推薦
從Delphi、C++ Builder和Lazarus連接到MySQL數據庫
![從Delphi、C++ Builder和Lazarus<b class='flag-5'>連接</b>到MySQL<b class='flag-5'>數據庫</b>](https://file1.elecfans.com/web3/M00/06/A5/wKgZO2eN5IqANOPPAAAbvvhWjM0611.png)
適用于MySQL和MariaDB的Python連接器:可靠的MySQL數據連接器和數據庫
![適用于MySQL和MariaDB的Python<b class='flag-5'>連接</b>器:可靠的MySQL<b class='flag-5'>數據</b><b class='flag-5'>連接</b>器和<b class='flag-5'>數據庫</b>](https://file1.elecfans.com/web3/M00/06/57/wKgZPGeJ2kmAcWpWAAAh1ecL_LM122.png)
從Delphi、C++ Builder和Lazarus連接到Oracle數據庫
MySQL數據庫的安裝
![MySQL<b class='flag-5'>數據庫</b>的安裝](https://file1.elecfans.com/web3/M00/05/E2/wKgZPGeF2XWAe83fAAAW9lhgvGk652.jpg)
云數據庫是哪種數據庫類型?
Looker Studio連接器:一個連接器從多個數據庫和云應用獲取數據
![Looker Studio<b class='flag-5'>連接</b>器:一個<b class='flag-5'>連接</b>器從多個<b class='flag-5'>數據庫</b>和云應用獲取<b class='flag-5'>數據</b>](https://file1.elecfans.com/web3/M00/04/AF/wKgZO2d3OMyAashgAAAVojZpcWo350.png)
數據庫數據恢復—MYSQL數據庫ibdata1文件損壞的數據恢復案例
數據庫數據恢復—通過拼接數據庫碎片恢復SQLserver數據庫
![<b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復—通過拼接<b class='flag-5'>數據庫</b>碎片恢復SQLserver<b class='flag-5'>數據庫</b>](https://file1.elecfans.com/web1/M00/F4/07/wKgaoWcjE32AbQdWAAJD_hojvJc119.png)
數據庫數據恢復—SQL Server數據庫出現823錯誤的數據恢復案例
![<b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復—SQL Server<b class='flag-5'>數據庫</b>出現823錯誤的<b class='flag-5'>數據</b>恢復案例](https://file1.elecfans.com/web2/M00/07/F4/wKgaombs78mANJ1GAAPeSoXHVPE244.png)
數據庫數據恢復—SQL Server數據庫所在分區空間不足報錯的數據恢復案例
使用mybatis切片實現數據權限控制
![使用mybatis切片實現<b class='flag-5'>數據</b>權限控制](https://file1.elecfans.com//web2/M00/F9/D3/wKgZomaLyPGADDxAAAEr4RL-Yl0024.png)
數據庫數據恢復—數據庫所在分區空間不足導致sqlserver故障的數據恢復案例
![<b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復—<b class='flag-5'>數據庫</b>所在分區空間不足導致sqlserver故障的<b class='flag-5'>數據</b>恢復案例](https://file.elecfans.com/web2/M00/A5/1F/pYYBAGRd7l6AFn25AAQyenpNuoc061.png)
數據庫數據恢復—raid5陣列上層Sql Server數據庫數據恢復案例
![<b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復—raid5陣列上層Sql Server<b class='flag-5'>數據庫</b><b class='flag-5'>數據</b>恢復案例](https://file.elecfans.com/web2/M00/A2/AD/pYYBAGRLbSSAHhFWAAI9vWNRQec919.png)
傳感器之外—兩個數據庫之間的“連接”查詢
![傳感器之外—兩個<b class='flag-5'>數據庫</b>之間的“<b class='flag-5'>連接</b>”查詢](https://file1.elecfans.com/web2/M00/C3/FB/wKgZomXv_IKABoIdAAAVnaXYiJs420.png)
評論