Articles of memory

Heroku Error R14 (Se excedió la cuota de memoria): ¿Cómo resuelvo esto?

Tengo una aplicación Rails 3.1 en Heroku. Estoy viendo muchos de estos errores: Error R14 (Cuota de memoria excedida) Normalmente, la entrada de registro anterior muestra: Proceso ejecutando mem = 522M (102.1%) Esto varía un poco pero nunca mucho y puede ocurrir después de casi cualquier solicitud de URL, por lo que no está relacionado […]

corriendo nokogiri en Jruby vs. solo ruby

Encontré una diferencia sorprendente en el uso de CPU y consumo de memoria. Parece que la recolección de basura no está ocurriendo cuando ejecuto la siguiente secuencia de comandos nokogiri require ‘rubygems’ require ‘nokogiri’ require ‘open-uri’ def getHeader() doz = Nokogiri::HTML(open(‘http://losangeles.craigslist.org/wst/reb/1484772751.html’)) puts doz.xpath(“html[1]\/body[1]\/h2[1]”) end (1..10000).each do |a| getHeader() end cuando se ejecuta en Jruby, el […]

¿Cómo obtengo el tamaño de un objeto ruby ​​en mb en Rails?

Quiero consultar un modelo de ActiveRecord, modificarlo y calcular el tamaño del nuevo objeto en mb. ¿Cómo hago esto?

Uso de rest-client para descargar un archivo en el disco sin cargarlo todo en la memoria primero

Estoy usando rest-client para descargar páginas grandes (alrededor de 1.5 GB de tamaño). El valor recuperado se almacena en la memoria que se guarda en un archivo. Como resultado, mi progtwig falla y failed to allocate memory (NoMemoryError) . Pero no es necesario mantener estos datos en la memoria, incluso se pueden guardar directamente en […]

Problemas de memoria con HTTParty y descargar archivos grandes

¿Esto va a causar problemas de memoria con Ruby? Sé que Open-URI escribe en un archivo Temp si el tamaño supera los 10 KB. Pero, ¿intentará HTTParty guardar todo el PDF en la memoria antes de escribir en TempFile? src = Tempfile.new(“file.pdf”) src.binmode src.write HTTParty.get(“large_file.pdf”).parsed_response

¡¿Los símbolos de Ruby no se recogen basura? Entonces, ¿no es mejor usar una cadena?

Si crea 10.000 cadenas en un bucle, se debe llevar a cabo una gran cantidad de recolección de basura que consume una gran cantidad de recursos. Si haces lo mismo con los símbolos, creas objetos que no pueden ser recolectados como basura . ¿Qué es peor?

El uso de la memoria aumenta con Ruby 2.1 en comparación con Ruby 2.0 o 1.9

Recientemente implementé una actualización de Ruby de 2.0 a 2.1.5 a mi aplicación web Heroku, y ahora estoy constantemente cometiendo errores de cuota de memoria, mientras que con 2.0 y 1.9 esto nunca sucedió. Hay un límite de 512 MB para un Heroku Dyno normal, y estoy ejecutando 2 procesos con Unicorn, junto con un […]