Heim  >  Artikel  >  Backend-Entwicklung  >  Ermitteln Sie die Speichernutzung von PHP

Ermitteln Sie die Speichernutzung von PHP

*文
*文Original
2017-12-28 15:42:575009Durchsuche

In diesem Artikel wird hauptsächlich erläutert, wie Sie die PHP-Speichernutzung ermitteln, wodurch wir die Skriptleistung analysieren können. Interessierte Freunde können darauf verweisen, ich hoffe, es wird für alle hilfreich sein.

Die in PHP integrierte Funktion „memory_get_usage()“ kann die aktuell dem PHP-Skript zugewiesene Speichermenge in Bytes zurückgeben. In der tatsächlichen WEB-Entwicklung sind diese Funktionen sehr nützlich und wir können sie zum Debuggen der PHP-Codeleistung verwenden.
Die Funktion „memory_get_usage()“ gibt die Speichernutzung zurück, die Funktion „memory_get_peak_usage()“ gibt die maximale Speichernutzung zurück und „getrusage()“ gibt die CUP-Nutzung zurück. Bitte beachten Sie jedoch, dass diese Funktionen unter Linux ausgeführt werden müssen.
Sehen wir uns unten ein Beispiel an:


echo '开始内存:'.memory_get_usage(), ''; 
$tmp = str_repeat('hello', 1000); 
echo '运行后内存:'.memory_get_usage(), ''; 
unset($tmp); 
echo '回到正常内存:'.memory_get_usage();


Ausgabe Ergebnis:
Startspeicher: 147296
Nachlaufspeicher: 152456
Zurück zum Normalspeicher: 147296

Im Beispiel verwenden wir str_repeat () Wiederholen Sie die Zeichenfolge „Hallo“ 1000 Mal und vergleichen Sie schließlich die vorher und nachher verbrauchte Speichergröße. Wie aus dem obigen Beispiel ersichtlich ist, können Sie zur Reduzierung der Speichernutzung die Funktion unset() verwenden, um nicht mehr benötigte Variablen zu löschen. Ähnlich wie bei der Funktion mysql_free_result() können wir, wenn wir die durch die Datenabfrage erhaltene Ergebnismenge nicht mehr benötigen, sie verwenden, um den von der Abfrage belegten Speicher freizugeben.
Die Funktion „memory_get_usage()“ kann auch einen Parameter, $real_usage, haben, dessen Wert ein boolescher Wert ist. Wenn auf TRUE gesetzt, wird die tatsächlich vom System zugewiesene Speichergröße abgerufen. Wenn es nicht gesetzt oder auf FALSE gesetzt ist, meldet emalloc() die Menge des verwendeten Speichers.
In der tatsächlichen WEB-Entwicklung können Sie PHP memory_get_usage() verwenden, um den von jeder Methode belegten Speicher zu vergleichen und auszuwählen, welche Methode weniger Speicher beansprucht.
Die Anzahl der von der Funktion „memory_get_usage()“ zurückgegebenen Bytes (Einheit: Byte(s)).

Die folgende benutzerdefinierte Funktion wandelt Bytes zur leichteren Lesbarkeit in MB um:


function memory_usage() { 
 $memory  = ( ! function_exists('memory_get_usage')) ? '0' : round(memory_get_usage()/1024/1024, 2).'MB'; 
 return $memory; 
}


Häufig verwendete Methoden zum Debuggen und Testen der PHP-Codeleistung sind:
memory_get_usage kann den Speicherbedarf analysieren.
Verwenden Sie die Mikrozeitfunktion, um die Programmausführungszeit zu analysieren.

Verwandte Empfehlungen:

Wie berechnet man die Skriptlaufzeit in PHP?

PHP-Leistungsanalyse und -Experiment: Makroskopische Leistungsanalyse

PHP-Leistungsanalyse und Experiment: Mikroskopische Leistungsanalyse

Das obige ist der detaillierte Inhalt vonErmitteln Sie die Speichernutzung von PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn