フォルダーにXMLファイルが含まれている間、それらをデータベース上で処理するPHPスクリプトがあります。
現在、サーバーは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のメモリ割り当てを制限して(メモリと仮想メモリ)、問題が発生した場合にシステムがハングしないようにすることです。
私の質問は
、このシェルスクリプトが使用するメモリを特定の量に制限するにはどうすればよいですか?
export USE_ZEND_ALLOC=0
。