mongoose 数据库连接问题

发布于 2022-09-04 00:13:45 字数 459 浏览 11 评论 0

数据库连接(暂时写在app.js)

var options = {
  server: {
    poolSize: 100,
    auto_reconnect: true,
    keepAlive: 10
  }
}

var db = mongoose.connect(settings.MONGODB_URL,options);

问题:

1.批量插入数据,一段时间后就会出现:

MongoError: connection 95 to xxx.xxx.xxx timed out

2.当出现上面错误的时候,所有相关的数据库操作就不运行了,是程序与数据库的连接断了吗? 是数据库连接设置的不对,还是可能是数据库的问题?

3.当我进行高并发的ab测试后,也会出现上面2的现象,是什么原因呢?是连接池相关设置的不正确吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

汐鸠 2022-09-11 00:13:45

首先要注意连接池问题,mongoose.connect只应该调用一次,其返回的对象维护了连接池,如果反复调用则会不断地打开和关闭连接,非常影响性能。
确认之后要看一下你给的压力有多大,是否已经占用完了所有可用的资源,可以看一下mongodb的log,有多少同时打开的连接。也可以看一下机器的资源剩余情况。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文