相关疑难解决方法(0)

我如何开始使用Node.js

有没有什么好的资源可以开始使用Node.JS?任何好的教程,博客或书籍?

当然,我访问了它的官方网站http://nodejs.org/,但我不认为他们的文档是一个很好的起点.

javascript node.js

1264
推荐指数
3
解决办法
123万
查看次数

何时使用线程池?

因此,我了解Node.js的工作原理:它有一个侦听器线程,它接收一个事件,然后将其委托给一个工作池.工作线程在完成工作后通知侦听器,然后侦听器将响应返回给调用者.

我的问题是:如果我在Node.js中站起来一个HTTP服务器并在我的一个路由路径事件(例如"/ test/sleep")上调用sleep,整个系统就会停止运行.甚至是单个监听器线程.但我的理解是这个代码发生在工作池上.

现在,相比之下,当我使用Mongoose与MongoDB通信时,DB读取是一种昂贵的I/O操作.Node似乎能够将工作委托给一个线程并在完成时接收回调; 从DB加载所花费的时间似乎并没有阻止系统.

Node.js如何决定使用线程池线程与侦听器线程?为什么我不能编写睡眠的事件代码并且只阻塞线程池线程?

events node.js

95
推荐指数
3
解决办法
4万
查看次数

JavaScript 事件循环和 Node.js 事件循环有什么区别?

在 JavaScript 中,事件循环用于引擎中。下面是一张图表来说明这篇文章


(来源:mybalsamiq.com

对于 Node.js,事件循环也在此处实现。引用这个问题

Node.js 事件循环在单线程下运行,这意味着您编写的应用程序代码在单线程上进行评估。Nodejs 本身通过 libuv 使用了许多线程,但是在编写 nodejs 代码时您永远不必处理这些线程。

然而,关于 node.js 事件循环对我来说仍然是抽象的。

  • 有没有图片可以更清楚的介绍一下?
  • 这两个事件循环有什么不同?

javascript event-loop node.js

9
推荐指数
2
解决办法
5336
查看次数

Node.js 如何同时异步和单线程?

问题标题基本上说明了一切,但重新表述一下:
如果主(且唯一)线程忙于运行主代码块,什么处理异步函数执行?

到目前为止,我只发现异步代码在其他地方或主线程之外执行,但这具体意味着什么?

编辑:提议的Node.js 事件循环问题的答案也可能解决这个主题,但我正在寻找一个更简单、更具体的答案,而不是对 Node.js 概念的解释。此外,它不会出现在任何类似于“节点异步单线程”的搜索中。

编辑,@Mr_Thorynque:运行查询以从数据库获取数据并将其记录到控制台。没有记录任何内容,因为 Node 是异步的,不会等待查询完成和数据填充。(这只是要求的一个例子,不是我问题的一部分)

var = data;
mysql.query(`SELECT *some rows from database*`, function (err, rows, fields) {
        rows.forEach(function(row){
        data += *gather the requested data*
    });
});
console.log(data);  
Run Code Online (Sandbox Code Playgroud)

asynchronous node.js

5
推荐指数
1
解决办法
669
查看次数

标签 统计

node.js ×4

javascript ×2

asynchronous ×1

event-loop ×1

events ×1