PHP, Ausgabe- Pufferung. Performance
bearbeitet von Jörg ReinholzMoin!
Aus reiner Neugier: Würdest du den Test nochmal laufen lassen, allerdings diesmal zuvor Ausgabepufferung aktivieren?
Für die 2700 Durchläufe, nur die For-Schleife:
Ganz ohne Ausgaben|0.001926
Gepuffert (ob_start/ob_flush)|0.004638 Sekunden
sofort auf Konsole|0.034456 Sekunden
Du hast offensichtlich recht damit, dass die Ausgabe auf die Konsole teuer ist. Aber halt. Ich teste mal mit Ausgabe in eine Datei und einen Pipe (ohne den mit zu messen!)
php test.php > out.txt|0.023997 Sekunden
php test5.php \| grep -v 'ß'| 0.0095148 Sekunden
**Fazit: Du hast Recht!** Der Ausgabepuffer von PHP macht es sehr viel schneller - vor allem, wenn zahlreiche Ausgabeoperationen zu bewerkstelligen sind. Sollte man wohl nutzen - und zwar stets dann, wenn es keine Bedenken hinsichtlich des Speicherverbrauchs gibt.
Jetzt würde ich das doch glatt gerne mal auf der selben Maschine unter Windows sehen :)
Jörg Reinholz
PHP, Ausgabe- Pufferung. Performance
bearbeitet von Jörg ReinholzMoin!
Aus reiner Neugier: Würdest du den Test nochmal laufen lassen, allerdings diesmal zuvor Ausgabepufferung aktivieren?
Für die 2700 Durchläufe, nur die For-Schleife:
Ganz ohne Ausgaben|0.001926
Gepuffert (ob_start/ob_flush)|0.004638 Sekunden
sofort auf Konsole|0.034456 Sekunden
Du hast offensichtlich recht damit, dass die Ausgabe auf die Konsole teuer ist. Aber halt. Ich teste mal mit Ausgabe in eine Datei (php test.php > out.txt)
Ausgabe umgeleitet|0.023997 Sekunden
**Fazit: Du hast Recht!** Der Ausgabepuffer von PHP macht es sehr viel schneller - vor allem, wenn zahlreiche Ausgabeoperationen zu bewerkstelligen sind. Sollte man wohl nutzen - und zwar stets dann, wenn es keine Bedenken hinsichtlich des Speicherverbrauchs gibt.
Jetzt würde ich das doch glatt gerne mal auf der selben Maschine unter Windows sehen :)
Jörg Reinholz
PHP, Ausgabe- Pufferung. Performance
bearbeitet von Jörg ReinholzMoin!
Aus reiner Neugier: Würdest du den Test nochmal laufen lassen, allerdings diesmal zuvor Ausgabepufferung aktivieren?
Für die 2700 Durchläufe, nur die For-Schleife:
Ganz ohne Ausgaben|0.001926
Gepuffert (ob_start/ob_flush)|0.004638 Sekunden
sofort auf Konsole|0.034456 Sekunden
Du hast offensichtlich recht damit, dass die Ausgabe auf die Konsole teuer ist. Aber halt. Ich teste mal mit Ausgabe in eine Datei (php test.php > out.txt)
Ausgabe umgeleitet|0.023997783660889 Sekunden
**Fazit: Du hast Recht!** Der Ausgabepuffer von PHP macht es sehr viel schneller - vor allem, wenn zahlreiche Ausgabeoperationen zu bewerkstelligen sind. Sollte man wohl nutzen - und zwar stets dann, wenn es keine Bedenken hinsichtlich des Speicherverbrauchs gibt.
Jetzt würde ich das doch glatt gerne mal auf der selben Maschine unter Windows sehen :)
Jörg Reinholz