代码之家  ›  专栏  ›  技术社区  ›  jpw

Rails 6应用程序如何使用Sidekiq+Redis进行热线/刺激,而使用DelayedJob进行“员工工作”,如电子邮件

  •  0
  • jpw  · 技术社区  · 3 年前

    对于我们所有的Rails应用程序,我们将DelayedJob用于“关键工作者作业”(发送电子邮件等),因为对于这些作业,我们希望在我们的主postgres DB存储区中找到作业,以简化管理检查、查询、调试、持久化,并在需要时手动重试。DelayedJob对于这些类型的作业具有足够的性能。

    有没有办法将ActiveJob用作基于DelayedJob的worker作业和基于Sidekiq的ActionCable作业的作业系统?

    还是将Sidekiq用于Hotwire/ActionCable 要求

    1 回复  |  直到 3 年前
        1
  •  2
  •   Joel Blum    3 年前

    You can have several jobs backends .

     class HotwireActionCableJob < ApplicationJob
       self.queue_adapter = :sidekiq
       # broadcast/stream something through action cable 
     end
    
     class SomeOtherJob < ApplicationJob
       self.queue_adapter = :delayed_job
     end
    

    或者将Sidekiq用于Hotwire/ActionCable是否需要我们的 使用ActiveJob放弃基于延迟作业的辅助作业(因此 使用本机DelayedJob(作业)?

    推荐文章