【问题标题】:"MongoServerSelectionError: connection <monitor> to xxx.xx.xx.xxx:27017 closed“MongoServerSelectionError:连接 <monitor> 到 xxx.xx.xx.xxx:27017 已关闭
【发布时间】:2021-06-22 23:35:40
【问题描述】:

我在我的应用程序中使用 AWS DocumentDB 作为我的数据库,该应用程序是在与 MongoDB 兼容的 node.js 中开发的。我使用 MongoClient 连接到我的数据库。我的应用程序执行,但每次执行大约建立 1000 个数据库连接,然后失败并出现错误:

MongoServerSelectionError: connection <monitor> to xxx.xx.xx.xxx:27017 closed. 

我也尝试使用client.close() 来关闭连接,然后它给出了连接池已关闭。我相信这个问题是由于数据库连接太多造成的。

如何释放 MongoDB 中的连接?任何帮助表示赞赏。

【问题讨论】:

  • 你能给出你的代码是如何建立连接的,连接对象是在每个请求上创建的吗?它应该是单例对象

标签: mongodb amazon-web-services aws-documentdb aws-documentdb-mongoapi


【解决方案1】:

从您的问题看来,发生的事情是您每次调用函数时都定义了一个新的 MongoClient 对象,导致驱动程序在每次函数调用时创建一个新的数据库连接。相反,请在 AWS Lambda 处理程序函数之外定义客户端连接,并在每个函数调用中重复使用该连接。

【讨论】:

    猜你喜欢
    • 2022-07-05
    • 2020-06-11
    • 1970-01-01
    • 2022-11-19
    • 2023-04-09
    • 2020-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多