我只是偶然发现了PGPOOL-II,以搜索聚集我的Postgres DB(只是准备在几个月内部署Web应用程序)。我仍然从兴奋中摇晃,但我很紧张,因为每次我发现如此出色的东西,我很快就会失望。您是否有PGPOOL-II的经验,它会帮助我在多个VM中运行数据库,然后在多个物理服务器中运行我的数据库?我所需要的是备份,负载平衡并为我的数据库服务器提供更高的可用性!

另外,使用并行查询函数(例如,在Django或Pythons psycopg2中)是否易于使用?这将是提供报告和聚合的最佳选择!

最后一件事:它似乎在Postgres和Psycopg2之间起作用。这是对它的正确理解,因此我可以使用psycopg2与正常情况相同,而无需考虑pgpool-ii?

有帮助吗?

解决方案

PGPOOL-II可以为其声称要做的事情做得很好。它符合您的应用程序和数据库之间的期望。只需将psycopg2指向它而不是直接在数据库中,然后就可以了。

您要注意的主要内容是,尽管它支持许多不同类型的功能 - 复制,负载平衡,并行查询 - 您不能一次使用它们。听起来您可能会在这种印象下做到这一点,而且它不起作用。该文档在此主题上并不清楚(至少是英语版本,我不能与原始的日语说话)。

例如,如果您以其“主/从属”模式运行PGPOOL-II,以便它支持用于缩放读取的负载平衡,则必须使用另一个程序来实际完成这些节点之间的复制。 Slony是在PGPOOL-II 3.0和PostgreSQL 9.0的PostgreSQL版本中放置在较早的PostgreSQL版本中的受支持的复制解决方案,您也可以使用该新版本的Slearing Replication Replication/Hot Standby功能。

PGPOOL-II是一个有用的组件,您可以以许多有趣的方式使用它,但是我怀疑您希望实现它的每项要求都会“您需要”。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top