什么是加速PHP加载/处理XML的优雅方法?

时间:2011-07-13 17:35:01

标签: php xml

所以目前我有一个小型Web应用程序,可以加载,处理和显示一个非常大的xml文件(超过2兆字节)。不幸的是,特别是随着发生的后处理,请求大约需要6-7秒才能加载。有没有办法加快xml文件的加载?我能想到的最简单的方法是将XML文件加载到内存中,然后在每个请求中访问该内存,但我不确定如何在PHP中执行此操作。根据我对该技术的理解,使用FastCGI应该可以工作,但我又不知道如何构建必要的基础设施以使其工作。

所以,我猜,每个人都建议加快网站的速度?不幸的是,我在这一点上坚持了XML文件的概念,并且向数据库的过渡将非常难看(它是基于树的)。但是人们可以推荐的任何内容都会有所帮助。

1 个答案:

答案 0 :(得分:3)

使用XMLReader阅读XML文件,因为它非常快,请确保使用LIBXML_COMPACT和/或LIBXML_PARSEHUGE进行阅读。如果您的XML文件不经常更改,请考虑缓存(例如使用memcached)。此外,使用字节码缓存(如APC)。

最重要的是:使用Profiler确保XML处理确实需要太长时间。