जब मैं इसे चलाता हूं और फिर ओएसएक्स गतिविधि मॉनिटर में मेरी रूबी प्रक्रिया की स्मृति खपत देखता हूं, तो स्मृति लगभग 3 एमबी/एस में बढ़ जाती है।कई नई ऑब्जेक्ट्स बनाते समय मेमोरी ब्लोट
यदि मैं लेनदेन को हटा देता हूं तो यह स्मृति की खपत को कम करता है लेकिन फिर भी, स्मृति पदचिह्न जारी रहता है। मुझे अपने उत्पादन ऐप पर कोई समस्या है जहां हरोकू अपनी स्मृति खपत के कारण प्रक्रिया को मारता है।
क्या नीचे ऐसा करने का कोई तरीका है, इस तरह से स्मृति में वृद्धि नहीं होगी? अगर मैं .save
लाइन पर टिप्पणी करता हूं तो यह ठीक है लेकिन निश्चित रूप से यह कोई समाधान नहीं है।
ActiveRecord::Base.transaction do
10000000.times do |time|
puts "---- #{time} ----"
a = Activity.new(:name => "#{time} Activity")
a.save!(:validate => false)
a = nil
end
end
मैं इसे delayed_job
का उपयोग कर चला रहा हूं।
अपने कचरा कलेक्टर Finetune लेकिन यह एक मुश्किल काम है ... – apneadiving
@Morgz आप रूबी और रेल के किस संस्करण का उपयोग कर रहे हैं? – Matty
@ मैटी रेल 3.1.0 – Morgz