0

我有一组按优先级排列的 Resque 队列。对于最低优先级队列中的所有作业,它们没有参数,并且稍后的运行将取代任何先前的运行——例如,它们正在与外部服务同步数据。因此,使用这些作业的多个副本创建积压是没有意义的——连续运行 3 次不会增加任何价值。

但是在忙碌期间,我们确实会积压(仅在此队列上),因为工作人员忙于更高优先级的工作。

我可以通过首先阻止冗余作业排队来防止这种积压​​吗?

4

1 回答 1

0

是的,有宝石可以做到这一点。(AFAICT,它们通过使用参数列表对作业类进行哈希处理,并在 Redis 中分别维护一组“已入队的键”。)

请参阅https://github.com/resque/resque-lonerhttps://github.com/neighborland/resque_solo

于 2017-10-13T13:35:40.450 回答