Ruby on rails 重新设定不运行的工作人员从队列中拾取作业-Rails

Ruby on rails 重新设定不运行的工作人员从队列中拾取作业-Rails,ruby-on-rails,redis,resque,Ruby On Rails,Redis,Resque,我有一份新工作要做。我试图通过发出以下命令将作业排队到队列: Resque.enqueue(“QUEUE”,参数) 它将作业推送到队列中。我尝试以localhost:3000/resque运行resque接口。它向我展示了待处理的工作。。但这也表明没有工人在运行。我通过以下命令运行rake任务来启动worker:(QUEUE='*'bundle exec rake resque:work)。 我的redis实例是Resque.redis= 当我尝试运行rake任务时,我也没有得到任何错误。。如果

我有一份新工作要做。我试图通过发出以下命令将作业排队到队列:
Resque.enqueue(“QUEUE”,参数)

它将作业推送到队列中。我尝试以localhost:3000/resque运行resque接口。它向我展示了待处理的工作。。但这也表明没有工人在运行。我通过以下命令运行rake任务来启动worker:(
QUEUE='*'bundle exec rake resque:work
)。 我的redis实例是Resque.redis=


当我尝试运行rake任务时,我也没有得到任何错误。。如果你需要进一步的信息,请告诉我

这已经很古老了,但希望这能帮助在这里跌倒的人

如果使用
resque lock
resque queue lock
,队列可能已锁定,并且可能无法释放,因为在释放锁之前进程可能已被终止

在我们的例子中,我们找到了所有的锁

Resque::Plugins::Queue::Lock.all_queue_locks
找到我们需要删除的那个,然后从redis中删除密钥

Resque.redis.del(the_key_name)

上面的_key_name
就是您在上一步中找到的确切字符串。

哪个版本的resque,也可以尝试调用这个resque.enqueue([Some Class],params)类似于
resque.enqueue(Archive,self.id,branch)
这里的Archive是worker classResque verison是v1.20.0。我试试看。谢谢