rake - 在后台运行rake任务与使用诸如Delayed Job,Resque或Sidekiq之类的gem有什么区别?

标签 rake background-process delayed-job resque sidekiq

我需要对1)发送电子邮件,2)执行一些API调用进行一些后台处理。而且,无论我使用什么系统,我都将与某种cron调度程序结合(只要有可能)。我很好奇,我认识到有很多非常酷的后台处理工具(Delayed Job,Sidekiq,Resque),但是我也了解到,您可以仅通过Ryan Bate的视频http://railscasts.com/episodes/127-rake-in-background的rake任务来进行后台处理。

使用gem VS rake任务进行后台处理有哪些利弊? 与后者有关的一件事是,每次调用rake任务时,您都必须启动一个新环境,这在内存上非常昂贵。

请注意,我不需要比较 gem 。这个系列在这里做得很好:
http://www.sitepoint.com/series/comparing-ruby-background-processing-libraries/

最佳答案

并行性。您可以让N个工作人员并行发送电子邮件。使用rake,您只有一个线程,发送许多电子邮件将花费一些时间。

关于rake - 在后台运行rake任务与使用诸如Delayed Job,Resque或Sidekiq之类的gem有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24603597/

相关文章:

ruby-on-rails - 未初始化的常量Delayed::Job

jquery - 如何使用 ajax 在嵌套 Rails 模型中处理后台任务时显示动画微调器

ruby-on-rails - rake 数据库 :create:all FATAL : password authentication failed

bash - 获取后台 gnome 终端进程的 pid

Java Web Service后台进程更新服务数据

iphone - 为什么这个应用程序在后台崩溃?

ruby-on-rails - Rails 4.2 从事件作业中获取延迟的作业 ID

ruby-on-rails - Rails : How to run code when server starts up, 但在运行 rake 任务或控制台时不是?

ruby-on-rails - rspec 失败 - "Couldn' t 查找表”,但 rake db :test:prepare doesn't fix it

ruby rake 守卫任务