resque

时间:2016-11-10 19:55:33

标签: resque php-resque jesque

我正在使用resque来处理两种类型的工作:

(1) 3rd-party API requests 
(2) DB query and insert

虽然可以并行处理这两个作业,但每个作业类型本身只能按顺序处理。例如,数据库操作需要按顺序进行,但可以与第三方API请求并行执行。

我正在考虑执行以下任一方法:

(1) Having two queues with one queue handling only API requests and the other queue 
handling only db queries. Each queue will have its own worker.

(2) One single queue but two workers. One worker for each job.

我想知道这两种方法的不同之处,两者之间的区别是更好的方法。

1 个答案:

答案 0 :(得分:1)

选择建筑的选择并不简单,你必须记住很多事情。

  

有两个队列,其中一个队列只处理API请求而另一个队列处理   仅处理数据库查询。每个队列都有自己的工作人员。

答:你可以拥有这种架构,当你让两个队列都忙碌时,即如果你有一个队列有更多的工作而其他队员是空的,那么你的一个工人将是偶像,并且会有其他队列中的工作等待。
你应该始终考虑充分利用你的工人。

  

一个队列,但有两个工作人员。每个工作一个工人。

Ans:这种方法也是我们在项目中使用的方法。
让所有作业进入一个队列并在其上运行多个工作人员 无论哪种类型的工作存在,您的工人总是很忙。
适当的工人利用率是可能的。


  

最后我建议你可以使用第二种方法。

相关问题