【问题标题】:Postgres connection pooling - multiple usersPostgres 连接池 - 多个用户
【发布时间】:2015-08-27 23:51:04
【问题描述】:

为了保护我们的数据库,我们为每个新客户创建了一个架构。然后,我们为此架构创建一个用户,当客户通过网络登录时,我们使用他们的用户,从而阻止他们访问数据库的其他区域。

我们的问题在于连接池,因为为这些用户不断创建/删除新连接有点低效。我们希望有一个可以跨数百个不同数据库用户工作的解决方案。

我们已经查看了 pg_bouncer,但这里的问题是我们必须在 ini 文件中为每个用户创建一个文本记录,并在每次设置客户时重新启动 pg_bouncer。这不是一个很好的解决方案。

是否有替代解决方案可以实时工作,这意味着客户连接/连接在它们处于活动状态时会保留在池中?

【问题讨论】:

  • pg_bouncer 需要重新加载,而不是重新启动。

标签: postgresql connection-pooling


【解决方案1】:

根据最新的发行说明pgbouncer might actually do this。但我没试过。

可以为每个数据库和每个用户配置池模式。

至于一般的用例。我们前段时间也遇到过这种问题。我们刚刚使用了一个用户/数据库和多个模式的连接池。在运行 psql 查询之前,我们只使用了SET search_path TO schemaName。至于日志记录,我们有合规模式,我们可以记录每个客户的活动并将其保存在适当的架构中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-05
    • 2017-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多