我在PHP脚本中有效处理内存时遇到了问题,我编写了该脚本解析XML然后将其导入数据库。
有大量的XML文件,大约有4-5百万。我在解析器中构建的已解析数据的数组变得太大,并且脚本刚被服务器杀死。
目前我的脚本执行以下操作:
1)单独加载每个XML文件
2)将相关数据存储在数组中的对象中
3)遍历所有对象并构建SQL查询
4)使用PDO驱动程序启动事务并导入数据
阵列变得如此之大,以至于脚本只是说“被杀”。在这种情况下,是购买功能更强大的服务器的唯一选择,还是有办法优化这些大型阵列,以确保脚本仍然运行速度快但不会崩溃?