我有一个PHP脚本,尽管一个文件夹包含XML文件,但会将其处理到数据库中。
当前,服务器正在运行PHP版本5.3.10,并且存在有关循环内触发的内存问题的错误报告ZEND_MM_HEAP
。
这将导致PHP无法正确释放内存,从而导致错误和脚本崩溃:
zend_mm_heap is corrupted
找到了一些解决方案,但我无权访问服务器设置。
为了解决这个问题,我准备了以下bash脚本来处理循环,而PHP脚本仅负责处理XML文件:
#!/bin/bash
# Check for files to process
# If files are present, call
# the PHP script
DIR="/path/to/dir/with/files"
while [ "$(ls -A $DIR)" ]; do
php /path/to/php/script/myscript.php
done
我现在的目标是限制bash内存分配(内存和虚拟内存),从而防止出现问题时挂起系统。
我的问题是:
如何将此Shell脚本使用的内存限制为特定数量?
export USE_ZEND_ALLOC=0
。