2
我是Node.js的新手,对于看起来像noob的问题我感到抱歉,但是我真的会对你的建议感觉更好。什么是Node.js中的CPU密集型任务?
我想我掌握了Node.js的大部分基础知识。我知道它是单线程的,因此所有的I/O作业都是异步的,以避免阻塞事件循环。
我也明白,由于这种单线程性质,Node.js不太适合CPU密集型任务,它会阻塞事件循环。
我的问题很简单:我正在研究websocket应用程序,并且在大多数请求中,我必须执行一些计算循环。根据我的测试,这个循环可能需要30到80毫秒才能完成。我应该认为这是一项CPU密集型任务吗? (如果是的话,我想我应该尝试将它委托给一个子进程,或者用process.nextTick将计算分成几个部分)。
我不知道它是否是CPU密集型的,但是如果你想要更好的性能,那么你可以考虑编写C/C++插件。 – freakish 2012-08-08 06:42:19
您还应该考虑您希望处理的并发用户数量。 10个用户30-80ms可能不是什么大不了的事情,但对于成千上万的用户来说,这是一个不同的交易。 – 2012-08-08 13:45:44