【发布时间】:2013-12-04 14:00:26
【问题描述】:
在多台机器上扩展多个模式,我使用 PostgreSQL 作为后端系统,现在我想查找模式驻留在哪台机器上的模式,所以就像我在两台机器 D1 上都有两台机器 M1 和 M2现在安装了 D2,tenant1 模式在 DB1 上,Tenant2 模式在 DB2 上,现在两个租户都将使用相同的应用程序服务器,在这种情况下,我必须使用集群和分区节点,并且每个节点都包含一定量的数据,或者喜欢。租户 1 和租户 2 可以使用相同的应用程序,现在我想要一些解决方案留在中间并执行池的查找和缓存。是否可以通过使用 Cluster 来完成它?或者我必须制作一个像 PgPool II 这样显示为数据库服务器的程序并为我查找架构。
【问题讨论】:
-
如果您的架构及其服务器不经常更改,那么在您的应用程序中处理连接到哪个数据库的决定可能会更有效,方法是在 in
pgbouncer(wiki.postgresql.org/wiki/PgBouncer)或 pgpool2。 -
感谢 bma,pgbouncer 似乎是可行的选择,但是这些服务器将没有复制,我的意思是服务器将保存不同的数据,所以如果租户 1 向 pgbouncer 和租户 2 请求它会查找哪个机器架构是自动的?
-
我不能肯定地说,但也许 pgbouncer 可以配置为根据 pgbouncer config.ini 文件中的某些逻辑将您的查询定向到正确的数据库。如果没有,您可能必须在应用程序中处理它。
标签: postgresql database-design schema cluster-computing scalability