如何开始"在Rails发布时的工作

时间:2014-07-23 05:32:41

标签: ruby-on-rails heroku ruby-on-rails-4 recurrence

使用https://github.com/facto/fist_of_fury执行重复任务(很酷的小宝石!)。说明说,一旦你安排了工作,“在某个地方,你需要用FistOfFury.attack!开始这个过程”

这有点含糊不清,所以我想对FistOfFury.attack!语句的位置有所了解......我想我很困惑,因为在哪里/什么是“开始”点?我正在使用Heroku,所以当Heroku服务器启动时(这是我理解运行initializer文件的时候)。

无论如何,我们欢迎这段代码FistOfFury.attack!是否应该出现在:

  • config/application.rb作为class Application end中运行的配置的一部分(这与将其放入我收集的config/environments相同,但我宁愿在此避免写两次,用于开发和生产环境
  • config/initializers/fistoffury.rb作为自己的文件
  • ......一些完全不同的地方

谢谢!

2 个答案:

答案 0 :(得分:0)

你可以使用Foreman。 Foreman可以帮助管理Rails应用程序在开发中运行时所依赖的多个进程。它还提供了一个导出命令,可以将它们投入生产。

/ config / initializers / *应该用于框架和gem的配置设置(参见:http://guides.rubyonrails.org/configuring.html)。

config / application.rb感觉不舒服,因为我不认为看那里看外部工作开始。

由于你已经在使用Heroku,只需要修改你的Procfile。

请参阅:

http://railscasts.com/episodes/281-foreman

https://devcenter.heroku.com/articles/procfile

http://blog.daviddollar.org/2011/05/06/introducing-foreman.html

答案 1 :(得分:0)

在这种情况下,对于Fist of Fury,好吧,因为整点是gem在一个进程中运行,答案是初始化文件。幸运的是,作者使用rails生成器命令修改了README,该命令将为您创建必要的初始化程序。