MongoDB超时问题(Node.js)

我在Node.JS有一个应用程序,基本上每30分钟从WebAPI检索一个数据的快照。 当我尝试通过使用聚合查询来询问数据库时,应用程序触发与超时有关的错误(MongoError:连接1到127.0.0.1:27017超时)。 从我的日志,我看到它正好是30秒。 聚合查询是这样的:

collection.aggregate([{ "$group": { "_id": { country: "$country", user: "$user" } } }]). 

我在另一个客户端(但是同一个数据库)上testing了这个查询,并且需要大约60秒钟来处理25.000.000条logging。 我的假设是有一个超时参数的值为30秒阻止我的应用程序完成查询。 有人可以告诉我如何在Node.JS中设置此参数吗? 我正在使用'mongodb'js库,我的主机是Windows。

由于这是一个个人项目,我想调查如何使用MongoDB而不是更传统的解决scheme(如Oracle或MySQL),但由于分析是整个应用程序的核心部分,因此这可能是一个难题。

我在这个答案中find了一个解决scheme: 在MongoDB聚合过程中“服务器x超时” 。

基本上,连接string看起来像这样:

 this.server = 'mongodb://127.0.0.1:27017/test?socketTimeoutMS=90000'; 

socketTimeoutMS的伎俩,我不再有连接超时错误。