0
我想用Nokogiri的SAX解析器解析大的XML文件。用Nokogiri的SAX解析器解析Redis的大XML
当我从一个文件读取相同的数据时,它工作的很好,但是当从Redis读取数据时,内存会超过1GB。
下面是我可以用来复制问题的最基本的代码。
任何想法为什么这样做?
class WordsList < Nokogiri::XML::SAX::Document
def start_element name, attrs = []
end
end
而这里的我是如何加载它:
doc = WordsList.new
parser = Nokogiri::XML::SAX::Parser.new doc
parser.parse row_data
的ROW_DATA方法是什么会从Redis的的XML。
谢谢。
这没有问题。我缩小了范围,甚至在一个基本上空的SAX文档中,内存跳跃起来。我会更新帖子。 – 99miles
'row_data方法是从Redis获取XML的。'然后如果您尚未这样做,请开始查看该方法在做什么。 – 7stud
$ redis.get(key) – 99miles