在nodejs中执行CPU绑定任务的方法

我正在使用nodejs作为解码GET参数并以某种编码格式返回数据的Web服务器。 解码/编码是使用nodejs的encryption模块完成的,这似乎是同步的。 虽然服务单个请求所花的时间足够快,但阻止事件循环使服务在并发性方面performance不佳。

我的要求很简单,使事件循环之外的编码/解码function。

  1. 单独的进程(child_process或集群)

这可以是一个单独的过程,只是为了这个目的,但是由于编码/解码将在subprocess中被阻塞,这将停止subprocess接收新消息,即当两个string被编码为subprocess也将是单线程的。

  1. 为每个请求分开线程(threads-a-gogo或fiber或node-webworker)

为每个请求创build一个单独的线程来执行编码/解码操作,但是没有一个模块看起来像预期的那样工作,即threads-a-gogo不通过npm安装,光纤没有在运行时创build单独的线程(),node-webworker 不工作 。

有人遇到过类似的问题,或者有一些方法可以通过简单的消息传递轻松地在nodejs中创build线程。

       

网上收集的解决方案 "在nodejs中执行CPU绑定任务的方法"