時間:2024-03-12 20:33作者:下載吧人氣:16
pgpool-II是一個位于postgresql數據庫和客戶端之間的中間件,可以提供一下幾個功能:
1.連接池
pgpool-II保持已經連接到postgresql數據庫的連接,并在使用相同參數連接進來時重用他們,減少了連接開銷,并增加了系統的總體吞吐量。
2.復制
pgpool-II可以管理多個postgresql數據庫,激活復制功能并使在2臺或多臺postgresql節點中建立一個實時備份稱為可能,這樣,如果其中一臺節點失效,服務可以不被終端繼續運行。
3.負載均衡
如果數據庫進行了復制,則在任何一臺服務器中執行一個select查詢將返回相同的結果。pgpool-II利用了復制的功能以降低每臺postgresql服務器的負載。它通過分發select查詢到所有可用的服務器中,增強了系統的整體吞吐量。在理想的狀況下,讀性能應該和postgresql數量成正比。負載均衡功能在大量用戶同時執行很多讀查詢的場景中工作效果最好。
4.限制超過限度的連接
postgresql會限制當前的最大連接數,當到達這個數量時,新的連接將被拒絕。增加這個連接數會增加資源消耗并且對系統的全局性能有一定的負面影響。pgpool-II也支持限制最大連接數,但她的做法是將連接放入隊列,而不是立即返回一個錯誤。
另外,pgpool-II也支持并行查詢,數據被分割到多臺服務器上,所以一個查詢可以在多臺服務器上同時執行,以減少總體執行時間。并行查詢在查詢大規模數據的時候非常有效。
IP | 應用 | 版本 |
---|---|---|
10.10.10.56 | postgresql | 9.2.15 |
10.10.10.57 | postgresql | 9.2.15 |
10.10.10.56 | pgpool-II | 3.5 |
環境說明:兩臺postgresql,pgpool和其中一臺postgresql在一臺服務器上。
測試需求:測試pgpool實現postgresql的復制和負載均衡
1.源碼安裝
wget http://www.pgpool.net/download.php?f=pgpool-II-3.5.3.tar.gz
tar -zxvf pgpool-II-3.5.3.tar.gz
cd pgpool-II-3.5.3
./configure –prefix=/usr/local/pgpool –with-openssl
#報錯configure: error: libpq is not installed or libpq is old
#安裝 yum install postgresql-devel即可
make && make install
網友評論