使用Sidekiq发送电子邮件时是否可以不使用Redis?

时间:2017-08-21 12:10:40

标签: ruby-on-rails ruby redis sidekiq mailer

我曾经使用Delayed_Job在我的rails应用程序中发送邮件,但只要它占用了我的ram,我就决定使用Sidekiq。我这样做了:

宝石文件

gem 'sidekiq'

application.rb中

config.active_job.queue_adapter = :sidekiq

development.rb

config.active_job.queue_adapter = :sidekiq

控制器

SampleMailer.method(data).deliver_now

邮件收发器

def method(data)
  mail(to: "afsanefadaei@hotmail.com", subject: "#{data}")
end

但是当我安装Sidekiq时,我注意到我必须在我的ubuntu上安装redis-server。我安装了redis服务器,现在一切正常,但问题是我不想安装redis-server。 redis服务器是Sidekiq的必需依赖项,还是我可以用某种方式忽略它? 提前谢谢

2 个答案:

答案 0 :(得分:2)

Sidekiq将其用作存储,它是唯一的选择,它不支持其他存储。以下是文档中的引用:

  

要求

     

Sidekiq支持CRuby 2.2.2+和JRuby 9k。

     

正式支持所有Rails版本> = 4.0。

     

需要Redis 2.8或更高版本。对于具有数千个工作线程的大型安装,建议使用3.0.3+。

GitHub

答案 1 :(得分:1)

是的,redis是sidekiq的存储空间。所以你必须使用一些形式的redis。如果您不想在服务器上安装它,则可以使用众多托管解决方案之一。只需google“redis hosting”。