Node.js承诺队列与集群模式

时间:2018-12-14 09:22:23

标签: node.js promise

我有一个Node.js脚本,该脚本从服务器获取任务并对数据执行一些操作。
在内部运行一个while(true)循环,在该循环中,它从服务器获取任务,等待任务完成,然后将结果推送回服务器。

我想扩展它,因此可以同时执行许多任务。 所以我发现了两个选择:

  
      
  1. 使用promise queue。例如。获取任务,放入队列
  2.   
  3. 仅按时处理一项任务,但运行脚本的许多实例(以群集模式运行)
  4.   

我想知道哪个更好,如果使用第二个选项,它将比第一个选项消耗更多的RAM?

1 个答案:

答案 0 :(得分:0)

因此,我使用RabbitMQ作为消息队列。它的客户端库amqplib消除了while(true)循环的使用,您可以通过产生更多的过程来极大地扩展它。通过将prefetch count设置为大于1的值,它也可以同时处理多个任务。