whenever.rb è un bel DSL per configurare i compiti cron in ruby ( https://github.com/javan/whenever )
tuttavia, ha un difetto maggiore: tutti i compiti che esegue sotto cron utilizzano la stessa priorità unix, e con 'priorità' intendiamo quella che fa abbattere il tuo boxen
fortunatamente, è facile da risolvere
passo uno, sostituisci // configura i modelli di lavoro nel file ./config/schedule.rb in modo che sembrino qualcosa del genere
# Ulteriori informazioni: http://github.com/javan/whenever
job_type :rake, "cd :path && RAILS_ENV=:environment :environment_variable=:environment nice -n 19 bundle exec rake :task --silent :output"
job_type :runner, "cd :path && nice -n 19 ./bin/rails runner -e :environment ':task' :output"
passo due: profitto
per coloro che non sanno cosa sia 'nice' di Unix, potresti voler leggere http://it.wikipedia.org/wiki/Nice_(Unix). TL;DR: rende i tuoi processi in background non utilizzare tutta la CPU.