首先要明白 Node.js 不适合 CPU 密集型的本质,是没有一个简单的方法把计算过程也多线程化。
Node.js 中 IO 任务是天然多线程的,也就是所谓的异步非阻塞 IO,所以效率很高,当你开启一个 IO 任务的时候,程序可以继续做其他事。
但如果你要做的是一个又臭又长的计算任务,那自始至终都只有一个线程。
这就很炸裂了。
Node.js里也存在 Worker Threads、Cluster之类的方法可以让你手动迁移计算任务,但都不是很方便,以及开销过大…。
后台-模块-广告管理-内容头部广告位 |
后台-模块-广告管理-内容头部广告位 |
首先要明白 Node.js 不适合 CPU 密集型的本质,是没有一个简单的方法把计算过程也多线程化。
Node.js 中 IO 任务是天然多线程的,也就是所谓的异步非阻塞 IO,所以效率很高,当你开启一个 IO 任务的时候,程序可以继续做其他事。
但如果你要做的是一个又臭又长的计算任务,那自始至终都只有一个线程。
这就很炸裂了。
Node.js里也存在 Worker Threads、Cluster之类的方法可以让你手动迁移计算任务,但都不是很方便,以及开销过大…。
后台-模块-广告管理-内容底部广告位 |
后台-模块-广告管理-内容底部广告位 |
快来评论,快来抢沙发吧~