如何在Ubuntu上将sidekiq作为守护进程运行?如果我运行bundleexecsidekiq-D我得到invalidoption:-D,有没有办法在没有其他Controller的情况下运行它,比如god,upstart。..? 最佳答案 Daemonizesidekiq有一个选项,只需传递-d选项commit 关于ruby-on-rails-在Ubuntu上将Sidekiq作为守护进程运行,我们在StackOverflow上找到一个类似的问题: http
在我的一个项目中,我正在使用Sidekiq是否有任何内置的Sidekiq控制台方法/方法可以帮助我确定sidekiq是否正在运行。我的要求是一种预检查条件,如果Sidekiq未运行,我将引发错误。我试过像这样使用grep'ps-ef|grepsidekiq'但这并没有解决我的目的。我正在寻找的方法应该是这样的:Sidekiq.is_running?提前致谢。我也试过Sidekiq未运行1.9.3p392:021>system'psaux|grepsidekiq'ankitgupta66830.00.02432768600s001R+11:47AM0:00.00grepsidekiqan
我不熟悉Sidekiq的内部结构,想知道是否可以启动多个具有相同配置(处理相同队列)的Sidekiq实例。是否有可能2个或更多Sidekiq实例将处理来自队列的相同消息?更新:我需要知道在超过1台机器上运行Sidekiq时是否可能存在冲突 最佳答案 是的,sidekiq绝对可以针对同一个队列运行多个进程。Redis只会将消息交给随机进程。 关于ruby-多个sidekiq实例可以处理同一个队列吗,我们在StackOverflow上找到一个类似的问题: http
我正在使用sidekiqgem在后台运行API调用。我在Daemon进程中运行了sidekiq,如下所示:bundleexecsidekiq-d现在我对我的方法做了一些改变,所以我想重启sidekiq。我尝试使用以下命令杀死sidekiq:kill-9process_id但它不起作用。我想知道重新启动sidekiq进程的命令。如果您有任何想法,请与我分享。我也试过下面的命令:sidekiqctlstop/path/to/pidfile/pids/sidekiq.pid 最佳答案 开始:$bundleexecsidekiq-d-Ptm
有谁知道如何找到sidekiq的pid文件来优雅地关闭它?正在运行psax|grepsidekiq然后运行sidekiqctlstop始终给出nosuchpidfile错误?Cntl-C和Cntl-D似乎也没有效果。关闭进程窗口并重新打开一个新窗口并不会终止进程,因为它似乎正在作为守护进程运行。我发现的唯一一致的修复方法是重新启动。 最佳答案 用它来强行杀死sidekiq。ps-ef|grepsidekiq|grep-vgrep|awk'{print$2}'|xargskill-9
我有大约6个Sidekiqworker执行JSON爬行。根据端点的数据集大小,它们在1分钟到4小时之间完成。特别是,观看需要4小时的长视频,我发现随着时间的推移,内存有非常轻微的增加。这不是问题,直到我想再次安排相同的worker作业。内存不会被释放并堆积起来,直到我遇到LinuxOOMKiller,它摆脱了我的Sidekiq进程。内存泄漏?我观察了ObjectSpace中不同对象的数量:ObjectSpace.each_object.inject(Hash.new(0)){|count,o|count[o.class]+=1}那里并没有真正增加,哈希集、数组等保持不变,垃圾收集器清除
目前,我有一个像这样的sidekiq工作:classSyncUserincludeSidekiq::Workerdefperform(user_id)#dostuffendend我正在像这样在队列中放置一个作业:SyncUser.perform_asyncuser.id当然这一切都有效,但在调用perform_async和作业实际执行之间有一点延迟。我还能做些什么来告诉sidekiq立即执行作业吗? 最佳答案 这里有两个问题。如果你想立即执行一个作业,在当前上下文中你可以使用:SyncUser.new.perform(user.id
在我的sidekiq仪表板中,我在左侧看到一个带有计数器的框Processed168Failed111Busy0Scheduled0Retries0Enqueued0如何将它们全部重置为0? 最佳答案 重置统计信息:Sidekiq::Stats.new.reset引用:AddresetstatstoWebUIsummaryboxandmethodtoAPI此外,您现在可以清除特定统计信息:Sidekiq::Stats.new.reset('failed')的单一统计数据或Sidekiq::Stats.new.reset('faile
我在Rails应用程序中使用sidekiq执行后台任务。现在job的数量变多了,所以我想清除所有的job。我在控制台中尝试了以下命令Sidekiq::Queue.new.clear但它给出了以下错误。NameError:uninitializedconstantSidekiq::Queue如何清除sidekiq中的所有作业? 最佳答案 您可以按照issue1077上的说明进行操作或如本报告所述blogatnoobsippets两者都建议我们执行以下操作,并且可以在Rails控制台上完成:Sidekiq.redis(&:flushdb
关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion我目前正在为我的后台进程使用Resque,但最近我听到很多关于sidekiq的提示。有人可以比较/区分吗?特别是我想知道是否有一种方法可以通过编程方式监控作业是否在sidekiq中完成