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

Responder a