Jesque如何与巨额Payload合作?

时间:2013-03-26 07:59:31

标签: background-process resque worker

我在https://github.com/gresrun读到了关于Jesque的内容,我想了解它是如何在巨大的有效载荷下执行的。是排队作业以创建Job类实例然后使用Thread启动worker的唯一方法还是有其他方法吗?我对使用java.lang.Thread对象持怀疑态度,就像在此链接上的示例中一样,对于数据负载很大的批处理作业。

1 个答案:

答案 0 :(得分:0)

实际上在没有控制的情况下产生线程绝不是一个好主意。

我建议将你的工作人员放在BlockingQueue中,然后产生非常有限数量的线程(尽可能多的CPU,以减少争用)以启动这些工作人员。工作完成后,线程会选择一个新工作人员并再次启动该过程。一旦队列中没有工作人员,线程就会挂起队列,等待新工作人员。

您可以查看Thread Pool Pattern