2017-01-15 89 views
0

我在我的Rails应用程序工作,我在之前运行它像使用此命令的魅力:Rails的工作后,轨工作将无法继续:工作

rails jobs:work 

但它不会继续下去我杀死了这些进程并尝试了很多解决方案,但没有发生任何事情!我猜想这个工作产生了一个队列,以至于它不能再运行了!你可以帮我吗? 在此先感谢。 它停止在这样的情况:

bundle exec rake jobs:work 
[Worker(host:afsane pid:7517)] Starting job worker 

和我的工作:

class LdapSyncJob < ApplicationJob 
    queue_as :default 
    require 'pp' 
    def perform 
    .... 
    end 
end 

FYI

ps aux | grep rails 

afsane 7675 0.0 0.0 15764 968 pts/5 S+ 15:24 0:00 grep --color=auto rails 

回答

1

尝试bundle exec rake jobs:workoff

这将启动一个在职职工和退出时所有可用的le工作完成。

让我知道这是否有帮助!

+0

这就是结果:bundle exec rake jobs:workoff [Worker(host:afsane pid:2839)] Starting job worker [Worker(host:afsane pid:2839)]没有更多的作业可用。正在退出 –

+0

它清楚地表明您没有排队工作。 检查您的application.rb以查看您的活动作业适配器。如果其delayed_job然后登录到您的控制台并运行Delayed :: Job.all来查看您是否有任何挂起的作业(可能有失败的作业)。如果你使用的是默认的sidekiq,那么通过这个来看看你是否有任何队列中的工作。 –

+0

我的application.rb中没有配置延迟作业。这意味着它的default.how我可以看到我的队列中的工作? –