Ruby on Rails: необходимо ежедневно регистрировать данные (размещено на Heroku) - PullRequest
0 голосов
/ 19 марта 2012

Cronjob против планировщика для Heroku.

Ответы [ 2 ]

2 голосов
/ 19 марта 2012

Похоже, вам просто нужно периодически выполнять задание один раз в день. В настоящее время рекомендуемый способ сделать это в Heroku - использовать планировщик :

Планировщик - это надстройка для запуска заданий в приложении через запланированные промежутки времени, аналогично cron в традиционной серверной среде.

Панель инструментов позволяет настраивать задания на запуск каждые 10 минут, каждый час или каждый день в указанное время. При вызове эти задания будут выполняться как одноразовые процессы и отображаться в ваших журналах как процесс с именем run.N.

Основной процесс довольно прост:

  1. Настройте задачу Rake, чтобы сделать все, что вам нужно:

    desc "This task does ..."
    task :your_task => :environment do
        # Do something interesting...
    end
    
  2. Добавьте надстройку планировщика обычным способом:

    $ heroku addons:add scheduler:standard
    
  3. Затем добавьте новое задание Rake через панель управления Heroku.

Если вы хотите запускать периодическое задание за пределами Heroku, настройте задание cron для запуска соответствующего задания Rake.

1 голос
/ 19 марта 2012

Возможно, вы хотите поместить эту задачу в задание Cron, которое обрабатывает повторяющиеся процессы или задачи.

Вот отличный скринкаст на тему любезности Райана Бейтса: http://railscasts.com/episodes/164-cron-in-ruby-revised


Если вам нужно настроить повторяющиеся задания на Heroku, вам нужно только добавить свои задания в lib/tasks/scheduler.rake и настройте их с помощью Schedular Add-on

http://devcenter.heroku.com/articles/scheduler

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...