FastCGI es bastante rudimentario e inestable y tiene ese tipo de problemas a veces se cuelga y te consume todos los recursos, lo que más te conviene es usar otra cosa un poco mejor, como por ejemplo mongrel, y no estaría mal que veas algo de fragment caching [1] y page caching [2].
[1] http://api.rubyonrails.org/classes/ActionController/Caching/Fragments.html [2] http://api.rubyonrails.com/classes/ActionController/Caching/Pages.html Saludos. 2008/4/1, Andres Quijano <[EMAIL PROTECTED]>: > > Buenas, hice una app que entre otras cosas tiene un ABM de textos de > publicaciones. El toque de color es que cada vez que se edita un > texto, hay que guardar un changelog con lo que cambió así los > traductores tienen registrado sólo los cambios y no tienen que leer > todo. Esto lo hago directamente en Ruby con una version minimamente > modificada de http://users.cybercity.dk/~dsl8950/ruby/diff.html, que > guarda un xml con inserciones y remociones y después con CSS se > muestra en el browser todo bien. > > Ahora el problema es que cuando el texto es muy largo (más de 2/3 > páginas), FastCGI muere (presumiblemente porque diff come 100% del > procesador). > > No sé nada de Mongrel ni FastCGI, alguien sabe si esto tiene alguna > solucion que no sea agregar más procesador? No sé si FastCGI muere por > un timeout o qué. Acá abajo va un stacktrace del error... mil gracias > de entrada! > > Andrés > > log/fastcgi.crash.log dice > > [16/Nov/2007:16:33:22 :: 26162] starting > [16/Nov/2007:16:34:47 :: 26162] asked to terminate immediately > > SystemExit (exit): > /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/fcgi_handler.rb:126:in > `exit' > /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/fcgi_handler.rb:126:in > `exit_now_handler' > /usr/lib/ruby/1.8/rubygems/custom_require.rb:21:in `to_proc' > /lib/diff.rb:187:in `replacenextlarger' > /lib/diff.rb:93:in `lcs' > /lib/diff.rb:89:in `lcs' > /lib/diff.rb:85:in `lcs' > /lib/diff.rb:111:in `makediff' > /lib/diff.rb:151:in `diff' > /lib/diff.rb:31:in `diff2html' > /app/controllers/publication_text_languages_controller.rb:139:in > `update' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/base.rb:941:in > `perform_action_without_filters' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/filters.rb:368:in > `perform_action_without_benchmark' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/benchmarking.rb:69:in > `perform_action_without_rescue' > /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/benchmarking.rb:69:in > `perform_action_without_rescue' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/rescue.rb:82:in > `perform_action' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/base.rb:408:in > `process_without_filters' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/filters.rb:377:in > `process_without_session_management_support' > > /usr/lib/ruby/gems/1.8/gems/actionpack-1.12.5/lib/action_controller/session_management.rb:117:in > `process' > /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/dispatcher.rb:38:in > `dispatch' > /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/fcgi_handler.rb:150:in > `process_request' > /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/fcgi_handler.rb:54:in > `process!' > /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:612:in `each_cgi' > /usr/lib/ruby/gems/1.8/gems/fcgi-0.8.7/lib/fcgi.rb:609:in `each_cgi' > /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/fcgi_handler.rb:53:in > `process!' > /usr/lib/ruby/gems/1.8/gems/rails-1.1.6/lib/fcgi_handler.rb:23:in > `process!' > dispatch.fcgi:24 > _______________________________________________ > Ruby mailing list > [email protected] > http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar > -- Gastón Ramos
_______________________________________________ Ruby mailing list [email protected] http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar
