2010-07-21 10 views
5

Estoy tratando de convertir una aplicación de rieles a jruby en rieles. Actualmente, jruby script/delayed_job run da:¿Hay un retraso en el trabajo como gema para jruby?

/usr/lib/jruby/lib/ruby/gems/1.8/gems/delayed_job-2.0.3/lib/delayed/command.rb:50:in `each_object': ObjectSpace is disabled; each_object will only work with Class, pass -X+O to enable (RuntimeError) 
    from /usr/lib/jruby/lib/ruby/gems/1.8/gems/delayed_job-2.0.3/lib/delayed/command.rb:50:in `daemonize' 
    from script/delayed_job:5 

¿Hay una joya como delayed_job para jruby?

Respuesta

1

yo no era consciente de la delayed_job utilizado ObjectSpace.
jruby lo desactiva de forma predeterminada y no sé las implicaciones de rendimiento
de lo que le permite con -x + O.
Si necesita procesar trabajos simples y pocas, se debe considerar BackgrounDRB.
Si necesita algo a escala, que debe salir Workling/Starling.

1

que tenían la misma exactamente el mismo problema. Al final, decidí usar Resque, que al principio resistí porque pensé que sería excesivo. También tiene otra pieza móvil de instalar, Redis ...

Sin embargo, al final resultó ser fácil de configurar y es muy flexible. Ahora estoy muy contento de haberlo probado.

+0

estaba usando Resque y JRuby en Windows o en un linux o mac? –

+0

@AlexBlakemore Bastante estándar: Mac para desarrollo, Linux para producción. – Scott

+0

Gracias por responder, me salvó de perder el tiempo tratando en vano de que Resque trabaje en Windows Server. Desafortunadamente, estamos atados a un servidor de Windows por ahora. –

2

Para el registro, cuando se despliega a un contenedor de servlets se puede utilizar para ejecutar https://github.com/kares/jruby-rack-workerDelayed::Job como parte de su solicitud JRuby::Rack en un hilo separado nativa (demonio) ...

Cuestiones relacionadas