2010-10-20 19 views
6

Stiamo avendo problemi enormi con il plugin delayed_job - http://github.com/collectiveidea/delayed_job/rotaie delayed_job problema del consumo di memoria

Quando iniziamo le attività con "script Ruby/delayed_job start", il processo non lascia andare di RAM acquista.

Quindi inizia con il 10%, il 25%, arriva all'80% e non lascia mai andare la ram, anche se non ha lavori da elaborare.

Qualche idea su come possiamo superare questo?

Grazie!

(PS: RAILS_ENV = produzione di avvio script/delayed_job non ha funzionato per noi per iniziare il lavoratore delayed_job)

+0

Perché non 'RAILS_ENV = produzione script/delayed_job lavoro start' per voi? Altrimenti lo stai eseguendo in sviluppo. In tal caso, in quale periodo di tempo si verifica questo problema? – wuputah

+0

Ho scoperto che agitando la bacchetta magica di 'GC.start' qualche volta spinge il garbage collector a mettersi davvero al lavoro. – tadman

+0

Probabilmente c'è una perdita di memoria da qualche parte nell'applicazione. Ci sono un paio di suggerimenti per il debug di questo problema nella guida dei binari (http://guides.rubyonrails.org/debugging_rails_applications.html#debugging-memory-leaks) –

risposta

2

Sulla base di consigliare dai IRC (da @ReinH), Ruby memoria mai libero di nuovo al sistema operativo .

Quindi l'unica soluzione che conosco adesso è riavviare manualmente il plug-in delayed_job ogni tanto.

@ReinH ha anche sottolineato il plugin delayed_job_spawner, che sembra essere un'altra soluzione plausibile - http://github.com/woahdae/delayed_job_spawner

+0

wow, non l'ho mai saputo, ma ora ci sto provando. Sembra un problema che devono essere risolti. Ecco un link a questo numero: https://github.com/collectiveidea/delayed_job/issues/336 – Jonathan

+0

Per la cronaca: Il lavoro ritardato con rails 3 sembra funzionare bene per noi - o non ha questo problema, o abbiamo fatto qualcosa di diverso nel nostro setup. – stringo0

Problemi correlati