Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何在不加载整个rails环境的情况下将作业排队到ActiveJob?_Ruby On Rails_Ruby On Rails 4_Cron_Sidekiq_Rails Activejob - Fatal编程技术网

Ruby on rails 如何在不加载整个rails环境的情况下将作业排队到ActiveJob?

Ruby on rails 如何在不加载整个rails环境的情况下将作业排队到ActiveJob?,ruby-on-rails,ruby-on-rails-4,cron,sidekiq,rails-activejob,Ruby On Rails,Ruby On Rails 4,Cron,Sidekiq,Rails Activejob,我想把一份工作从不同的地方排到ActiveJob。有时来自命令行,有时来自cron作业。但是每次加载整个环境,仅仅在redis中创建一个条目,感觉不是很有效 是否有其他解决方案可以在不加载整个Rails应用程序的情况下快速向ActiveJob添加作业 我知道,这应该是spring的工作,但(我不知道为什么)仍然需要大约5秒钟: > time rails runner -e production 'SynchronizeStuffJob.perform_later' [ActiveJob]

我想把一份工作从不同的地方排到ActiveJob。有时来自命令行,有时来自cron作业。但是每次加载整个环境,仅仅在redis中创建一个条目,感觉不是很有效

是否有其他解决方案可以在不加载整个Rails应用程序的情况下快速向ActiveJob添加作业

我知道,这应该是spring的工作,但(我不知道为什么)仍然需要大约5秒钟:

> time rails runner -e production 'SynchronizeStuffJob.perform_later'
[ActiveJob] Enqueued SynchronizeStuffJob (Job ID: 148e34bd-c38c-45c9-86f5-5a959a548ebb) to Sidekiq(default)

real    0m5.122s
user    0m4.385s
sys     0m0.663s

哦,如果这很重要的话:我使用sidekiq。

ActiveJob需要Rails;如果不启动Rails,则无法使用ActiveJob

您可以在不启动Rails的情况下创建Sidekiq本地工作者作业