時(shí)間:2024-03-12 20:33作者:下載吧人氣:18
pgpool-II是一個(gè)位于postgresql數(shù)據(jù)庫(kù)和客戶端之間的中間件,可以提供一下幾個(gè)功能:
1.連接池
pgpool-II保持已經(jīng)連接到postgresql數(shù)據(jù)庫(kù)的連接,并在使用相同參數(shù)連接進(jìn)來(lái)時(shí)重用他們,減少了連接開(kāi)銷,并增加了系統(tǒng)的總體吞吐量。
2.復(fù)制
pgpool-II可以管理多個(gè)postgresql數(shù)據(jù)庫(kù),激活復(fù)制功能并使在2臺(tái)或多臺(tái)postgresql節(jié)點(diǎn)中建立一個(gè)實(shí)時(shí)備份稱為可能,這樣,如果其中一臺(tái)節(jié)點(diǎn)失效,服務(wù)可以不被終端繼續(xù)運(yùn)行。
3.負(fù)載均衡
如果數(shù)據(jù)庫(kù)進(jìn)行了復(fù)制,則在任何一臺(tái)服務(wù)器中執(zhí)行一個(gè)select查詢將返回相同的結(jié)果。pgpool-II利用了復(fù)制的功能以降低每臺(tái)postgresql服務(wù)器的負(fù)載。它通過(guò)分發(fā)select查詢到所有可用的服務(wù)器中,增強(qiáng)了系統(tǒng)的整體吞吐量。在理想的狀況下,讀性能應(yīng)該和postgresql數(shù)量成正比。負(fù)載均衡功能在大量用戶同時(shí)執(zhí)行很多讀查詢的場(chǎng)景中工作效果最好。
4.限制超過(guò)限度的連接
postgresql會(huì)限制當(dāng)前的最大連接數(shù),當(dāng)?shù)竭_(dá)這個(gè)數(shù)量時(shí),新的連接將被拒絕。增加這個(gè)連接數(shù)會(huì)增加資源消耗并且對(duì)系統(tǒng)的全局性能有一定的負(fù)面影響。pgpool-II也支持限制最大連接數(shù),但她的做法是將連接放入隊(duì)列,而不是立即返回一個(gè)錯(cuò)誤。
另外,pgpool-II也支持并行查詢,數(shù)據(jù)被分割到多臺(tái)服務(wù)器上,所以一個(gè)查詢可以在多臺(tái)服務(wù)器上同時(shí)執(zhí)行,以減少總體執(zhí)行時(shí)間。并行查詢?cè)诓樵兇笠?guī)模數(shù)據(jù)的時(shí)候非常有效。
IP | 應(yīng)用 | 版本 |
---|---|---|
10.10.10.56 | postgresql | 9.2.15 |
10.10.10.57 | postgresql | 9.2.15 |
10.10.10.56 | pgpool-II | 3.5 |
環(huán)境說(shuō)明:兩臺(tái)postgresql,pgpool和其中一臺(tái)postgresql在一臺(tái)服務(wù)器上。
測(cè)試需求:測(cè)試pgpool實(shí)現(xiàn)postgresql的復(fù)制和負(fù)載均衡
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
#報(bào)錯(cuò)configure: error: libpq is not installed or libpq is old
#安裝 yum install postgresql-devel即可
make && make install
網(wǎng)友評(píng)論