0

我已经实现了Ahoy来跟踪我的应用程序中的事件,并且我想将处理移动到后台作业中。

当我打电话时我的设置工作正常perform_now(工作得到处理),但更改为perform_later不起作用。从日志来看,这项工作似乎甚至没有入队。

config/initializers/ahoy.rb

class Ahoy::Store < Ahoy::BaseStore
  def track_visit(data)
    AhoyTrackVisitJob.perform_later(@options, data)
  end

  def track_event(data)
    AhoyTrackEventJob.perform_later(@options, data)
  end
end

app/jobs/ahoy_track_event_job.rb

class AhoyTrackEventJob < ApplicationJob
  queue_as :default

  def perform(options, data)
    Ahoy::DatabaseStore.new(options).track_event(data)
  end
end

我已经尝试过 Sidekiq 和 SuckerPunch:

development.rb
config.active_job.queue_adapter = :sidekiq
4

0 回答 0