【发布时间】:2018-03-10 18:30:25
【问题描述】:
我在 Expressjs 中使用原生 mongodb 驱动程序,我不想在我的路由中定期打开和关闭连接。我想在所有 next() 函数中使用一个连接打开一次,然后在完成后关闭。
我看到打开连接后,我可以将 db 对象传递给请求对象中的 next() 函数并使用它。
当我尝试关闭连接时,如 var db=req.db; db.close();它会引发错误。
为了解决这个问题,我决定使用 settimeout 函数来关闭我的连接。
我可以传递并使用 db obj 并发送响应,并且 1-2 秒后 db obj 被 settimeout 关闭。
我担心如果请求更多,settimeout 函数会影响服务器性能。如果我使用这个技巧来管理我的数据库连接。
【问题讨论】:
-
我找到了在新的 3.6 mongodb 版本中关闭数据库而不是客户端的答案。
标签: node.js mongodb express connection