PHP线程脚本中止

我得到了一个php脚本在我的服务器(一个线程)上运行,每1小时。 这个线程正在做的是,用户可以用数据上传excel文件,线程将excel文件中的数据与数据库中的数据进行比较,并执行某些操作(如果find的行不存在,则不执行某些数据库插入操作)。 要阅读excel文件,我打电话给:

$data = new Spreadsheet_Excel_Reader(); $data->read($file); 

用户可以上传更多的xls文件,在服务器上调用:File_1.xls,File_2.xls,File_3.xls我读取第一个文件得到所有的数据做所有的比较做所有的插入,这可能需要一段时间它的超过6000 excel中的行。 我注意到,如果线程运行时间很长,例如他可以插入文件1和文件2,并且文件是6000+行这样的大文件,我会在我的错误日志中得到一个中止。 我认为这是excel读者的错。 有任何想法吗?

据我所知你的服务器没有足够的内存(RAM)来保存多个文件指针和大数组数据。 增加服务器的内存或尝试使用不同的algorithm从XLS读取数据以执行比较插入。

Interesting Posts