[英]delayed_job fails jobs when running as a daemon. Runs fine when using rake jobs:work
[英]rake jobs:work working fine. problem with script/delayed_job start
我正在用LoadData.send_later(:test)调用函数。 LoadData是我的类,而test是我的方法。
我正在执行rake工作时工作正常:工作。
但是当我运行script / delayed_job启动或运行该时间时,delay_job.log显示如下错误
TEastern Daylight Time: *** Starting job worker delayed_job host:KShah pid:5968
TEastern Daylight Time: * [Worker(delayed_job host:KShah pid:5968)] acquired lock on LoadData.load_test_data_with_delayed_job
Could not load object for job: uninitialized constant LoadData
TEastern Daylight Time: * [JOB] delayed_job host:KShah pid:5968 completed after 0.0310
TEastern Daylight Time: 1 jobs processed at 10.6383 j/s, 0 failed ...
任何解决方案?
尝试将include LoadData放在初始化程序中。 我似乎记得DelayedJob包括activerecord类,notifiers等,但不包括自定义类。 我个人将类放在您的models目录中。 即使它不是activerecord,它仍在处理数据。
尝试这样做:
Delayed::Job.enqueue LoadData.test
另外,一个大陷阱让我意识到...如果对代码进行更改,请重新启动 rake job:work!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.