pgpool介绍
pgpool介紹
- pgpool功能優(yōu)勢
- 連接池
- 負載均衡
- 自動故障轉(zhuǎn)移
- 在線恢復(fù)
- 復(fù)制
- 限制超出連接
- 看門狗
- 內(nèi)存查詢緩存
- Pgpool-II存在的功能缺陷
- TODO
- 關(guān)于作者
- 相關(guān)鏈接
參考Pgpool官方文檔。
pgpool功能優(yōu)勢
Pgpool-II是PostgreSQL數(shù)據(jù)庫客戶端與PostgreSQL服務(wù)器之間的代理軟件,也就是說客戶端不在直接連接PostgreSQL服務(wù)器,而是通過Pgpool進行連接。它提供以下功能:
連接池
與PostgreSQL服務(wù)器建立連接后會由Pgpool-II維護該連接,并當新連接連接時,如果存在具有相同連接信息(即用戶名,數(shù)據(jù)庫,協(xié)議版本和其他連接參數(shù))的連接則直接使用它們。它減少了連接開銷并改善了系統(tǒng)的整體吞吐量。
負載均衡
如果數(shù)據(jù)庫是復(fù)制模式的(以復(fù)制模式或主/從模式運行),則在任何服務(wù)器上執(zhí)行SELECT查詢都將返回相同的結(jié)果。Pgpool-II 利用復(fù)制功能來減少每臺PostgreSQL服務(wù)器上的負載。它通過將SELECT查詢分配到可用的服務(wù)器之間來做到這一點,從而提高了系統(tǒng)的整體吞吐量。在理想情況下,讀取性能可以與PostgreSQL服務(wù)器的數(shù)量成正比。在只讀查詢并發(fā)比較高的情況下,負載平衡效果最佳。
自動故障轉(zhuǎn)移
如果其中一臺數(shù)據(jù)庫服務(wù)器出現(xiàn)故障或無法訪問, Pgpool-II會將其分離,并將繼續(xù)使用其余的數(shù)據(jù)庫服務(wù)器提供服務(wù)。提供了很多自動故障轉(zhuǎn)移配置來使該功能到最優(yōu)效果,例如包括超時和重試。
在線恢復(fù)
Pgpool-II可以通過執(zhí)行一個命令來執(zhí)行數(shù)據(jù)庫節(jié)點的在線恢復(fù)。當在線恢復(fù)與自動故障轉(zhuǎn)移一起使用時,可以通過故障轉(zhuǎn)移將失敗的節(jié)點分離,同時使用在線恢復(fù)自動附加為備用節(jié)點。也可以同步附加新的PostgreSQL服務(wù)器節(jié)點。
復(fù)制
Pgpool-II可以管理多臺PostgreSQL服務(wù)器。復(fù)制功能可以在兩臺或者多臺PostgreSQL服務(wù)器之間創(chuàng)建實時備份,因此,如果其中一臺PostgreSQL服務(wù)器發(fā)生故障,服務(wù)可以繼續(xù)運行而不會中斷。Pgpool-II具有內(nèi)置復(fù)制(本機復(fù)制)。但是,用戶可以使用外部復(fù)制功能,包括PostgreSQL的流復(fù)制(目前大多數(shù)的主備集群都采用PostgreSQL的流復(fù)制來實現(xiàn))。
限制超出連接
PostgreSQL的最大連接數(shù)是有限制的(postgres.conf中max_connections),達到此數(shù)量時,新連接將被拒絕。但是,增加最大連接數(shù)會增加資源消耗,并對整體系統(tǒng)性能產(chǎn)生負面影響。Pgpool-II對最大連接數(shù)也有限制,但是將對額外的連接進行排隊,而不是立即返回錯誤。當然也可以配置為在超過連接限制(4.1或更高版本)時返回錯誤。
看門狗
看門狗可以協(xié)調(diào)多個Pgpool-II節(jié)點,建立強壯的集群系統(tǒng),并避免單點故障或腦裂。看門狗可以對其他pgpool-II節(jié)點執(zhí)行生命檢查,以檢測Pgpoll-II的故障。如果活躍中的Pgpool-II節(jié)點發(fā)生故障,則備用 Pgpool-II節(jié)點可以升級為活躍狀態(tài),變?yōu)橹鞴?jié)點,并接管虛擬IP。
內(nèi)存查詢緩存
內(nèi)存查詢緩存允許保存一對SELECT語句及其結(jié)果。如果出現(xiàn)相同的SELECT,則Pgpool-II從緩存中返回該值。由于不涉及SQL解析或?qū)ostgreSQL的訪問,因此內(nèi)存緩存將非常快。但另一方面,在某些情況下,它可能會比正常途徑慢,因為它增加了存儲緩存數(shù)據(jù)的開銷。
Pgpool-II存在的功能缺陷
TODO
關(guān)于作者
小劉先森 GISer
QQ: 1016817543
郵箱:1016817543@qq.com
github:https://github.com/MrSmallLiu (歡迎star)
相關(guān)鏈接
以下為本人參與開發(fā)的一些庫,歡迎各位Star、Issues、PR
- 基于PostgreSQL和PostGIS的坐標轉(zhuǎn)換函數(shù),支持點、線、面的WGS84和CGCS2000與GCJ02和BD09坐標系與之間互轉(zhuǎn)
- 統(tǒng)一社會信用代碼相關(guān)的PostgreSQL函數(shù),包括驗證、隨機生成等
總結(jié)
- 上一篇: 服务器被黑,帮凶竟然是Redis
- 下一篇: C# 键值对 KeyValue 解析