【问题标题】:node.js non-blocking mongodb callsnode.js 非阻塞 mongodb 调用
【发布时间】:2015-10-12 14:59:30
【问题描述】:

我对 Node.js 比较陌生,并且正在使用 MongoDB 作为数据库的项目。一些 MongoDB 查询很昂贵。例如,我有一个包含数百万条记录的集合,根据搜索条件,查找查询可能需要 1-2 秒。

在 MongoDB 返回结果之前,对 MongoDB 的调用(使用 Mongoose 驱动程序)是否会阻止 Node.js 处理其他请求?

另外,是否有任何工具可以识别具有阻塞性质的潜在代码行?

谢谢。

【问题讨论】:

  • 一般来说,如果它们在函数签名中有回调,它们就是非阻塞的。例如MongoClient.connect('mongodb://127.0.0.1:27017/test', function(err, db) 有一个回调函数(err, db) 并且是非阻塞的。

标签: javascript node.js mongodb mongoose


【解决方案1】:

@user949300 提供了正确答案。

一般来说,如果它们在函数签名中有回调,它们就是非阻塞的。例如MongoClient.connect('mongodb://127.0.0.1:27017/test', function(err, db) 有回调函数(err, db) 并且是非阻塞的。

【讨论】:

    猜你喜欢
    • 2012-07-07
    • 1970-01-01
    • 1970-01-01
    • 2013-06-24
    • 2015-07-06
    • 2014-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多