我正在开发一个完全无阻塞的node.js应用程序。
但是有一些CPU密集型功能:
现在我发现一个模块使用线程从CPU密集型任务中卸载事件循环: node-webworker-threads
我现在应该创建:
线程是我还不完全理解的东西..
答案 0 :(得分:5)
这实际上取决于您的申请。如果您使用固定大小的线程池,则如果请求数量> gt,则必须实现队列。可用线程数,可能会导致一些拥塞。
最好的方法(在我看来当然)是为每个请求生成一个新线程,它处理AES,UUID和数据。也就是说,每个请求执行所有计算的一个线程。完成所有操作后,返回线程中的结果并将其终止。
这当然可以在高负载服务器上产生许多线程;但会保持你的事件循环清晰。
编辑:This thread可能对您有用。