我有一个需要在后台执行的任务列表(Rails 5.0.1),按以下顺序 -
这需要在没有任何人为输入的情况下每天完成。现在,我正在使用Rails运行器来完成所有这些并使用cron('Whenever'gem)安排它。那么,使用“跑步者”正确方法?是否存在内存密集度较低方法,我可以使用,因为前端(管理面板)不会被访问太多?活跃的工作,耙子,守护进程等怎么样?
答案 0 :(得分:1)
。 rake任务只是命名空间内的一堆代码,通过rake管理工具
执行。 runner
在非交互式的Rails环境中运行Ruby代码
。另一方面,守护进程与这两个完全不同,你可以在这里查看更多相关内容:http://daemons.rubyforge.org/
对于你的情况,最好使用rake,因为它不会启动rails“除非你做”(跑步者必须启动rails)。
另一件事是rake是单线程的,所以如果你想要有效地完成一项任务你可以使用rake,如果你有多个任务你可以使用工人和工具,如Sidekiq,Resque和Delayed jobs