gpt4 book ai didi

ruby - 没有 Rails 的 Sidekiq 不会加载工作类

转载 作者:数据小太阳 更新时间:2023-10-29 06:48:56 29 4
gpt4 key购买 nike

我正在使用 Sidekiq 3.1.2 没有 Rails 像这样:

$ sidekiq -vr sidekiq.rb

sidekiq.rb 看起来像这样:

($LOAD_PATH << '.' << 'lib' << 'lib/workers').uniq!
require 'lookup_worker'

lib/workers/lookup_worker.rb 看起来像这样:

require 'sidekiq'

class LookupWorker
include Sidekiq::Worker

def perform(*args)
puts "LookupWorker#perform fired with arguments #{args.map(&:inspect).join(', ')}"
end
end

但是当我在 irb 并尝试

> LookupWorker.perform_async('asdf')

它给了我这个:

WARN: {"retry"=>true, "queue"=>"default", "class"=>"LookupWorker", "args"=>["asdf"], "jid"=>"8c278868c5f05ec9beb1dbae", "enqueued_at"=>1402457226.9612548}
WARN: uninitialized constant LookupWorker
WARN: [backtrace, none of it from my code]
ERROR: Sidekiq::Processor crashed!
NameError: uninitialized constant LookupWorker

我错过了什么?

最佳答案

所以...

LookupWorker 中,require 在第 1 行的 sidekiq gem 和 sidekiq 脚本之间混淆了。

我的 sidekiq.rb 需要重命名为 sidekiq_script.rb(或任何其他名称)。唯一的问题是,我必须在运行 sidekiq 时包含目录:

$ sidekiq -r ./sidekiq_script.rb

不是

$ sidekiq -r sidekiq_script.rb

嗯,我觉得有点傻。

关于ruby - 没有 Rails 的 Sidekiq 不会加载工作类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24154013/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com