【问题标题】:Connection Pooling with PostgreSQL and AWS使用 PostgreSQL 和 AWS 进行连接池
【发布时间】:2016-06-03 00:33:32
【问题描述】:

拥有微服务架构,多个服务与我的 PostgresSQL 数据库对话。如果我现在想将我的部分应用程序部署为 AWS Lambda 函数,如何避免连接不足?

阅读了几篇文章 [1]、[2]、[3] 我意识到 PgBouncer 可能非常适合我的微服务架构。

我的数据库前是否需要“微服务”?如何使用 AWS Lambda 进行设置?

【问题讨论】:

    标签: postgresql amazon-web-services aws-lambda


    【解决方案1】:

    根据 AWS 开发者论坛上的 this thread,AWS Lambda 会在可能的情况下尝试重用旧进程,这提供了使用客户端连接池的可能性。

    在我看来,在数据库前使用专用的连接池总是一个好主意。使用它,您可以最大限度地减少数据库上的打开连接,这可能是资源使用者。您可以在 blog post 上找到有关 Postgresql 的更多信息

    据我所知,AWS 没有提供专门的连接池服务。您可以为此使用专用实例。对于 Postgresql,PgBouncer 是一个不错的选择。它不需要大量的 CPU 或大量内存,但您仍然更喜欢网络优化实例。请注意,仅在 PgBouncer 实例上,您会在您的架构中引入一个 spof。

    【讨论】:

    • 尽管他们提供了所有服务,但他们不提供连接池作为服务......这是一种耻辱。
    • 让我们希望 Aurora Serverless 解决这个问题
    猜你喜欢
    • 1970-01-01
    • 2013-03-12
    • 2014-12-15
    • 1970-01-01
    • 1970-01-01
    • 2016-05-19
    • 2013-10-12
    • 2018-11-27
    • 1970-01-01
    相关资源
    最近更新 更多