4

我在搜索我的 Postgres DB 集群时偶然发现了 pgpool-II(准备在几个月内部署一个 Web 应用程序)。我仍然因为兴奋而颤抖,但我很紧张,因为每次我发现如此出色的东西时,我很快就会失望。你有使用 pgpool-II 的经验吗,它会帮助我在多个虚拟机上运行我的数据库,然后在多个物理服务器上运行吗?这就是备份、负载平衡和为我的数据库服务器提供更高可用性所需的全部内容!?

另外,使用并行查询功能是否容易(例如,在 Django 中或通过 Pythons psycopg2)?这对于提供报告和汇总来说是最出色的!

最后一件事:它似乎在 Postgres 和 psycopg2 之间工作。这是对它的正确理解,所以我可以像平常一样使用psycopg2,而不考虑pgpool-II吗?

4

1 回答 1

4

pgpool-II 可以很好地完成它声称要做的事情。它以您期望的方式适合您的应用程序和数据库;只需将 psycopg2 指向它,而不是直接指向数据库即可。

您需要注意的主要事情是,虽然它支持许多不同类型的功能——复制、负载平衡、并行查询——但你不能一次使用它们。听起来您可能认为您可以做到这一点,但事实并非如此。关于这个主题的文档并不是很清楚(至少是英文版,我不会和原来的日文版说话)。

例如,如果您在其“主/从”模式下运行 pgpool-II,以便它支持负载平衡以扩展读取,您必须使用另一个程序来实际执行这些节点之间的复制。Slony 是早期 PostgreSQL 版本中支持的复制解决方案,从 pgpool-II 3.0 和 PostgreSQL 9.0 开始,您还可以使用该新版本即将发布的流复制/热备功能。

pgpool-II 是一个有用的组件,您可以通过很多有趣的方式使用它,但我怀疑它对于您希望通过它实现的每一个要求来说都是“您所需要的”。

于 2010-09-18T05:28:59.787 回答