現在、かなり長い間実行されるスクリプトがあります(ただし、独自の別のプロセスでフォークされています)。あまり頻繁に実行されることはありませんが、実行されると、主に (多くの) XLS ファイル (> 10 MB) の処理で大量のメモリが使用されます。
現在、このスクリプトが 6000 秒の時間制限で実行されている場合、メモリ制限は 1024M に設定されています。これらは上限ですが、実際にはそれほど時間はかかりません (おそらく 5 分で十分です)。
膨大な量のメモリが必要なため、PHP/Apache がどのようにメモリを管理しているのか気になります。
- スクリプトが終了すると、メモリは自動的に解放されますか? そうでない場合は、いつになりますか。
- オブジェクトを暗黙的に解放する必要がありますか?
- スクリプト内からメモリを少しずつ解放することは可能ですか?
- 1024M は多すぎますが、長期的にはサーバーにどのような影響を与えるのでしょうか。
ところで、私はPHPExcel Libraryを使用しています。