Rails 3.1.1 を使用し、Heroku にデプロイしています。オープンウリとノコギリを使用しています。
xml ファイルを取得して解析しようとしているときに発生するメモリ リーク (?) をトラブルシューティングしようとしています。フェッチして解析しようとしている XML フィードは 32 Mb です。
私はそれに次のコードを使用しています:
require 'open-uri'
open_uri_fetched = open(feed.fetch_url)
xml_list = Nokogiri::HTML(open_uri_fetched)
ここで、feed.fetch_url は外部の xml ファイルです。
Nokogiri (私のコードの最後の行) で xml_list を解析している間、メモリ使用量は 540 Mb の使用量まで爆発し、増加し続けているようです。XML ファイルは 32 MB しかないため、これは論理的ではないようです。
これをより適切に分析する方法 (例: Ruby/Ruby on Rails メモリ リーク検出)を探しましたが、それらの使用方法がわかりません。MemoryLogic は十分に単純に見えますが、インストール手順には情報が不足しているようです...
ですから、上記のコードがそれだけの量のメモリを使用するべきかどうか、またはメモリ リークを見つける方法に関する (非常に単純な) 指示のどちらかを判断するのを手伝ってください。
前もって感謝します!