一个文件有多大以防止你使用DOM或SimpleXML并使用拉解析器?

时间:2011-07-21 10:38:46

标签: php xml dom simplexml sax

我将构建一个脚本,我将处理一个非常大的XML文件。我的问题是你必须转移到拉解析器而不是使用DOM或SimpleXML?

当xml文件加载到内存中时,每次为每个请求数据的用户加载它,甚至同时或一段时间加载一段时间?

我应该遵循“块方法”还是避免它并使用SAX / XMLreader?

谢谢。

1 个答案:

答案 0 :(得分:2)

基于树的XML表示(例如DOM)通常使用源文档大小的5到10倍。因此,当你尝试处理高并发性和吞吐量时,它会变成200Mb以上的痛苦(或者更少)。

如果要避免重复将同一文档加载到内存中,应用程序应保留缓存。