2011-03-18 11 views

Respuesta

13

con DJ 3.0 puede agregar esto al archivo config/initializers/delayed_job_config.rb:

Delayed::Worker.sleep_delay = 2 
+2

Agregué 'Delayed :: Worker.sleep_delay = ENV ['DELAYED_WORKER_SLEEP_DELAY'] || Retrasado :: Worker.sleep_delay' a 'config/initializers/delayyed_job_config.rb' para poder controlar el retraso a través de una variable de entorno (en' desarrollo' Reduje la frecuencia de sondeo a '60' segundos, y en' puesta en escena 'y' producción' Ni siquiera lo configuro, manteniendo así el valor predeterminado de '5' segundos). – user664833

0

Claro, sólo tiene que ir a RAILS_ROOT/vendor/plugins/delayed_job/lib/retraso/worker.rb, busque la línea

self.sleep_delay = 5

y el cambio a

self.sleep_delay = 2

o lo que desea

En una versión anterior de DJ configuré esto a tan solo 0.1 para que los trabajos en la cola se recogieran para procesarlos casi al instante y funcionen bien.

+0

cómo cambiar el retraso si lo instalé de forma gema? gem 'delayed_job', ¿Hay alguna forma de no modificar el gemfile, pero cambiarlo en config? – c2h2

+2

Pruebe esto Delayed :: Worker :: sleep_delay = number_of_seconds # en RAILS_ROOT/config/initializers/delayed_job_config.rb – drhyde

1

establecer

Delayed::Worker.const_set("SLEEP", 2)

en su archivo config/initializers/delayed_job_config.rb intento.

Cuestiones relacionadas