背景是,我正在编写一个ExpressJS应用程序,并使用MongoDB的Node驱动程序mongodb
。
应用程序有时需要快速访问远程数据库,这取决于用户的活动频率。我知道应用程序不应该每次需要数据时都打开和关闭连接。它应该连接一次,并且应该有一个名为db
的东西可供查询,例如:db.collection("users").find(...)
,所有未来的数据库调用都只需使用该db
变量。
但是如果我部署我的应用程序,我假设server.js
仅在应用程序生命周期的开始执行一次。那将意味着在整个部署的生命周期中只进行一次连接。
但是这些连接不会超时吗?我只需检查db
变量是否为打开状态,如果不是,则在进行调用之前重新连接?
令人惊讶的是,我没有找到很多指南,所以我不知道正确的方法,这就是为什么我在这里提出问题的原因。如果可以提出更好的问题,请告诉我。
client.close()
,我只需要像这样连接一次:var client = MongoClient.connect(url, (err, client) => client );
- nth-chile