Activerecord не освобождает память после сборки файлов
Я создал функцию контроллера для создания резервной копии базы данных или какой-либо ее части, но после создания отправленных им файлов выделенная память не освобождается.
Отчет об использовании памяти, выполненный с использованием гема rack-mini-profiler, показывает, что большую часть памяти занимает ActiveReccord, и в конце концов он не освобождается. Полный отчет здесь.
1 ответ
Вот что я сделал, чтобы уменьшить проблемы с памятью (не полностью решены).
Напишите интенсивный код базы данных в блоке, написанном как ниже.
ActiveRecord::Base.connection_pool.with_connection do
write your code here...
end
Также вы можете попробовать запустить сборщик мусора с GC.start
в конце действия.
Позвольте мне знать, если это помогает