我如何为延迟邮件程序启用单独的 Sidekiq 队列

How i can enable separate Sidekiq queue for Delayed Mailer

我正在使用 sidekiq 进行后台作业,对于不同类型的作业,我们使用不同的队列,例如,对于与付款相关的作业,我们使用关键付款队列,我们​​使用 sidekiq 延迟邮件扩展来发送邮件,它使用默认队列.

我想将所有邮件程序移动到一个单独的队列中。 我试试配置

config.action_mailer.deliver_later_queue_name = 'mailer_test'

但在刷新并重新启动应用程序后仍推送到默认队列。 我怎样才能将它移到一个单独的队列中。

该配置项用于 Active Job 邮件程序。您正在使用 Sidekiq。将其放入您的初始化程序中:

class Sidekiq::Extensions::DelayedMailer
  sidekiq_options queue: 'mailer_test'
end

然后确保使用该队列启动 Sidekiq:

bundle exec sidekiq -q mailer_test -q default