与PostgreSQL和AWS的连接池

lon*_*ony 8 postgresql amazon-web-services aws-lambda

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

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

我的数据库前需要"微服务"吗?如何使用AWS Lambda进行设置?

小智 5

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

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

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

  • 对于他们提供的所有服务,他们没有提供连接池作为服务......这是一种耻辱。 (8认同)