6

PHP アプリケーションの実行速度が少し遅く、現時点ではメモリ効率があまり良くありません。サーバー全体が頻繁にダウンしており、このアプリのせいだと思います。メモリ使用量を監視し、制限としてどれだけ持っているかを確認すると思いました:

echo 'Memory in use: ' . memory_get_usage() . ' ('. memory_get_usage()/1024 .'M) <br>';
echo 'Peak usage: ' . memory_get_peak_usage() . ' ('. memory_get_peak_usage()/1024 .'M) <br>';
echo 'Memory limit: ' . ini_get('memory_limit') . '<br>';

これは次のことを示しています。

Memory in use: 629632 (614.921875M) 
Peak usage: 635696 (620.796875M) 
Memory limit: 128M

これはどうやってできるの?使用中のメモリがメモリ制限よりも大きくなっていますか? 何かが本当に壊れているか、設定がどのように機能するかをまったく理解していませんmemory_limit(またはmemory_get_usage())

皆さん、ありがとうございました。

4

1 に答える 1

10

memory_get_usageはそれをバイト単位で返します。実際に計算しているものは ですkB。で割って入れ1024ますMB

同じことがmemory_get_peak_usageにも当てはまります

例えば

echo 'Memory in use: ' . memory_get_usage() . ' ('. ((memory_get_usage() / 1024) / 1024) .'M) <br>';
于 2013-08-07T13:21:35.353 に答える