pg高性能服务器,Pgpool-II 负载均衡对PG的性能影响
Pgpool-II相當(dāng)于中間件,Pgpool-II與PG是解耦合的,基于這樣的機制,Pgpool-II可以搭建在已經(jīng)存在的任意版本的PG主從結(jié)構(gòu)上,主從結(jié)構(gòu)的實現(xiàn)與Pgpool-II無關(guān),可以通過slony等工具或者PG自身的流復(fù)制機制實現(xiàn)。
一、拓撲結(jié)構(gòu)
本次實驗是基于PG自身的流復(fù)制。拓撲結(jié)構(gòu),如圖1所示,
1.一臺Master PG 主庫。
2.一臺Slave PG 從庫。
3.Pgpool將會分別安裝在主機 和 從機進行測試。
圖1
二、測試
pgbench是PG自帶的一款簡單的PG性能測試工具,測試指標(biāo)是TPS,表示每秒鐘完成的事務(wù)數(shù)。測試過程如下:
1.創(chuàng)建測試數(shù)據(jù)。
pgbench -i -s100 -h 172.18.89.115 ?-p 5432 postgres
這條指令將會創(chuàng)建1000萬條測試數(shù)據(jù).由于我們是主從結(jié)構(gòu)的流復(fù)制模式,測試數(shù)據(jù)將會寫入主機,主機將會把數(shù)據(jù)備份給從機。
2.數(shù)據(jù)測試
使用pgbench啟動30個客戶端,進行60秒的測試。
pgpool安裝在主/從機的時候執(zhí)行此命令(讀寫測試):
pgbench -c 30 -T 60 -h 主/從機 IP -p 9999? -U postgres
單機測試(關(guān)掉pgpool,注意端口的改變):
pgbench -c 30 -T 60 -h 主/從機 IP -p 5432? -U postgres
只讀測試,添加-S 參數(shù)即可。
測試中對pgpool分別 安裝在主機 和 從機 進行7次測試,
表格名詞解釋:
主機:pgpool安裝在master db 服務(wù)器上。
備機:pgpool 安裝在 slave db 服務(wù)器上。
單機:關(guān)閉pgpool ,只用pg 自身進行測試。
讀寫模式下:
單位:TPS
圖2
圖3
相對而言,pgpool 安裝在從機的時候性能更高,對本次測試數(shù)據(jù)而言,性能提升17.28%。因為寫操作對主庫操作較多,如果pgpool 安裝在主庫服務(wù)器上,勢必對pg的影響較大,測試發(fā)現(xiàn)性能大約是單機時候的69.6%。
只讀模式下:
單位:TPS
圖4
圖5
以上數(shù)據(jù)可以看出在只讀模式下,pgpool 安裝在備用機器上性能依舊高于主機和單機的情況下。性能大約提升14.48%,安裝在主機的性能依舊低于單機性能。
綜上所訴,pgpool 對pg 的性能有一定的提升,提升在16%左右,這是pgpool安裝在主從服務(wù)器上,如果把pgpool 單獨獨立出一臺服務(wù)器做負載均衡,理論上此時對pg的性能應(yīng)該還有提升空間。畢竟pgpool的啟動還是對服務(wù)器自身也是有一定的性能消耗。
本文探討的只是采用的pgpool的主備流復(fù)制模式,打開了負載均衡。pgpool 自身還有復(fù)制模式,在線回復(fù),故障恢復(fù),并行查詢等功能,感興趣可以繼續(xù)探討研究。
總結(jié)
以上是生活随笔為你收集整理的pg高性能服务器,Pgpool-II 负载均衡对PG的性能影响的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python下载文件传到服务器_pyth
- 下一篇: 运营商iptv服务器,IPTV 服务器