7得票3回答
使用ActiveJob和Sidekiq相比仅使用Sidekiq的优势

我正在阅读一些在线教程,告诉我们如何使用ActiveJob和Sidekiq。但我不知道为什么我们应该这样做。我看到Sidekiq拥有ActiveJob的所有功能。 此外,在Sidekiq文档中:这里 警告:通过ActiveJob进行作业重试,您将失去许多 Sidekiq功能: We...

9得票4回答
当使用Delayed::Job时,如何使用ActiveJob设置优先级

当使用ActiveJob来排队作业时,如何设置延迟作业的优先级? class GuestsCleanupJob < ApplicationJob queue_as :high_priority def perform(*guests) # Do something l...

10得票1回答
ActiveJob有特定优先级队列吗?

看下面的工作,我会假设该工作在一个low_priority队列上运行。class GuestsCleanupJob < ActiveJob::Base queue_as :low_priority #.... end 我同意这一点,但这只是队列的名称对吗?它实际上与优先级无关。例...

17得票2回答
Rails 4.2 - Sidekiq在开发环境中无法发送电子邮件

我有一个 Rails 应用程序,其中有一个方法,我在其中发送了许多电子邮件。我想要异步执行此操作。为此,我尝试使用 Sidekiq,但是我无法使其正常工作-它没有发送任何电子邮件。之前发送电子邮件是可以正常工作的,因此我确定我的电子邮件设置已正确设置。在我的 gemfile 中,我有以下内容:...

7得票2回答
什么可能导致预定的Rails Active Jobs消失?

我怀疑我们的一些活动工作正在消失,但我不知道为什么。下面是我找到的一个证据它消失了,但不知道原因。 我们的网站使用外部云打印服务。我们启动作业,然后检查它们的状态。成功创建远程云打印后,我们创建一个主动作业立即检查其状态。如果已完成(无论成功与否),则将其标记为已完成。如果没有,则检查状态作...

90得票14回答
如何使用rspec测试ActionMailer的deliver_later方法

我正在尝试升级到Rails 4.2,并使用delayed_job_active_record。我没有为测试环境设置delayed_job后端,因为我认为这样工作任务将会立即执行。 我正在尝试使用RSpec测试新的“deliver_later”方法,但是我不确定该如何操作。 旧的控制器代码:Se...

18得票1回答
ActiveJob::SerializationError - 不支持的参数类型:时间 / 日期时间

我正在使用Rails 5和ActiveJob来处理后台任务。 我试图传递一个使用as_json序列化的对象到我的job中,但是我收到了以下错误:ActiveJob::SerializationError (Unsupported argument type: Time): ActiveJob:...

8得票2回答
ActiveJob的deliver_later方法没有发送任务

我有以下方法: 我有以下方法: UserMailer.comment_alert(@comment, user, type).deliver_later 在Rails日志中,这个参数奇怪地显示为deliver_now: [ActiveJob] Enqueued ActionMaile...

28得票4回答
使用ActiveJob在rspec中执行待处理的任务

我有这段代码用于使用Rspec测试ActiveJob和ActionMailer,但我不知道如何真正执行所有排队的作业。describe 'whatever' do include ActiveJob::TestHelper after do clear_enqueued_jo...

14得票3回答
RSpec Rails测试:如何强制ActiveJob作业在某些测试中内联运行?

我希望在特定标记的测试中内联运行我的后台作业。 我可以通过使用perform_enqueued do包装测试来实现,但是如果可能的话,我希望能够仅使用元数据进行标记并自动完成。 我尝试了以下方法:it "does everything in the job too", perform_enq...