![]() |
|
|
Themen-Optionen |
|
|
Nach oben #1 |
|
Erfahrener Benutzer
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.619
|
Dieser Thread hätte genauso gut bei der Literatur angesiedelt sein können.
Ich habe mich aber dazu durchgerungen in an dieser Stelle zu verlinken, da ich ihn für sehr lesenswert halte. - 40 Tips for optimizing your php Code Man soll ja generell nicht alles glauben, was so über Performance geschrieben wird, da es häufig auch von der individuellen Implementierung der Anwendungen abhängt. Nichtsdestotrotz zeigt der Blogeintrag von Reinhold Weber durchaus interessante Punkte, die man selbst hinterleuchten kann. Durch diesen Thread ist natürlich jeder, der meinte weitere nützliche Informationen zu diesem Thema zu haben, dazu aufgerufen diese mit der Gemeinschaft zu teilen. In diesem Sinne, happy optimizing. |
|
|
|
|
|
Nach oben #2 |
|
Blubb... öfz
Registriert seit: 16.03.2006
Ort: Berlin
Beiträge: 419
|
Das mit dem count() in der for-Schleife wusst ich gar nicht. Sehr interessanter Artikel! Danke, Ben!
Da merkt man mal, wie uneffektiv man doch noch arbeitet :>
__________________
Vive la France! Welcome to Sarkoworld... |
|
|
|
|
|
Nach oben #4 |
|
Erfahrener Benutzer
Registriert seit: 30.03.2006
Ort: Pfinztal
Beiträge: 355
|
eines vielleicht dazu, da ichs mal überflogen habe.
Auf der einen Seite wird vor der Verwendung von autoload gewarnt, auf der anderen Seite vor require_once. Wenn man die Wahl hat, Klassen einzufügen und nicht den genauen Pfadnamen kennt (beispielsweise beim Zend-Framework), sollte man einen Autoload-Mechanismus bevorzugen. Denn das Autoload bei einer Klasse ist deutlich effizienter, als in jeder neuen Quelldatei haufenweise teure require_once zu schreiben.
__________________
Open Sourcing the Online Gaming Universe PHP/SQL/Java/C++/Assembler. Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html |
|
|
|
|
|
Nach oben #5 |
|
Erfahrener Benutzer
Registriert seit: 04.01.2006
Ort: Kassel
Beiträge: 789
|
Echt schräge Auflistung, völlig wirr zusammengesammelt. Da findet sich Firlefanz, dazu teilweise noch vielfach widersprüchlich gemessener, wie ' vs. " oder echo vs. print() oder wie eine Ganzzahl inkrementiert werden kann neben Tipps, wie Code in C-Extensions "auszulagern", dem Einsatz von diversen Chaches.
Und dann spricht er och von Profilern. Frag mich, ob der sich wirklich mal das Gewicht seiner einzelnen Tipps angeschaut hat. Ich denke, hier wäre eine Aufteilung interessant: 1.) Tipps, welche von zwei (oder mehreren) ansonsten gleichwertigen Alternativen schneller ist. 2.) Performance-Tipps, die den Entwurf betreffen - mit Information/Diskussion über die jeweiligen Vor- und Nachteile. Hier wird ja erstmal ungleiches miteinander verglichen und das kann man ja nur individuell auf den gemeinsamen Nenner der Kosten (Mehraufwand an Entwicklung und Wartung bzw. Kosten für Hardware) gebracht werden (wenn das überhaupt für ein "Standard-Projekt" relevant wird). Andere Faktoren, wie der Zeitaufwand für Entwicklung und Wartung pielen da natürlich auch mit rein. 3.) Caching, dass in verschiedenen Ebenen mit keiner bis nur geringer Beeinträchtigung der Architektur des ganzen Gebildes eingebaut werden kann mit seinen Vor- und Nachteilen. Es macht einfach keienen Sinn, zu schreiben "Error messages are expensive", ohne den Preis zu benennen, da ja a) jeder weiß wie hoch der Preis wäre, Fehlermeldungen aus seinem Code zu verbannen (nämlich letztlich unbezahlbar), b) niemand annehmen wird, dass diese Entscheidung einen wirklich nennenswerten Leistungsvorteil bringen wird und dazu noch c) es jedem Auftraggeber Wurscht sein wird, ob der Besucher eine Sekunde auf seine Fehlermeldung warten muss oder nicht, da es der Fehler ist, der im Fokus seines Interesses ist! Was ist eigentlich mit der Datenbank? Basti |
|
|
|
|
|
Nach oben #6 |
|
Erfahrener Benutzer
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.619
|
Hast schon Recht. Ein Großteil der Punkte ist einfach nur so "reingeworfen" und scheint mir eben dazu zu dienen, um auf möglichste viele Tips zu kommen.
Eine gut sortierte Liste wäre wirklich klasse. |
|
|
|
|
|
Nach oben #7 |
|
Cäptn
Registriert seit: 15.12.2004
Ort: Stockholm
Beiträge: 116
|
ich hätte da mal ne frage:
inwiefern unterscheidet sich die geschwindigkeit mit der ein skript abgearbeitet wird, wenn man anstelle von 1. PHP-Code:
2. PHP-Code:
angenommen man hat viele verschachtelungen, so hat der interpreter ja auch mehr zeilen zu lesen als bei 2. fällt sowas mit zunehmender anzahl von verschachtelungen ins gewicht oder nicht? ja, ich könnte einfach mal einen versuch machen und die zeit messen. aber vielleicht hat sich dessen ja schonmal jemand angenommen..
__________________
"Wer nicht mit der Zeit geht, wird mit der Zeit gehen." ___________________________ |
|
|
|
|
|
Nach oben #8 |
|
Erfahrener Benutzer
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.619
|
Ich behaupte, dass das nur in äußersten Extremfällen ins Gewicht fällt, ohne es aber jetzt belegen zu können.
Gab vor Jahren auf php.de mal einen Thread zu einem ähnlichen Thema. Da ging es um Performanceunterschiede bei langen Variablennamen. Die dort von mir getätigten Aussagen würde ich allerdings nun nicht mehr so machen. Man lernt ja bekanntlich, ne? Hier der Link: http://phpfriend.de/forum/viewtopic.php?t=35134 |
|
|
|
|
|
Nach oben #9 |
|
Erfahrener Benutzer
Registriert seit: 30.03.2006
Ort: Pfinztal
Beiträge: 355
|
Die beiden Beispiele dürften sich nur in einem nicht wirklich messbaren Bereich unterscheiden. Der Parser übersetzt das ganze bereits im ersten Schritt in ein lesbares internes Format, wodurch beide Varianten identisch sind. Der Parser hat statt eines Leerzeichens einen Zeilenumbruch zu interpretieren, wobei aber beides an dieser Stelle als Whitespace behandelt wird, also identisch.
__________________
Open Sourcing the Online Gaming Universe PHP/SQL/Java/C++/Assembler. Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html |
|
|
|
|
|
Nach oben #10 |
|
Erfahrener Benutzer
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.619
|
Ich bin nur zufällig auf diesen Blog hier gestoßen, habe also keinerlei Erfahrungen mit der Seite, aber da kann man ja mal mitlesen. Muss ich mal etwas stöbern, wenn ich die Zeit finde.
http://phpperformance.de/ |
|
|
|
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| [Rezension] PHP 5 Kochbuch | Artemis | Literatur | 2 | 07.09.2006 19:15 |
| PHP 5.1.5, PHP 4.4.4 und PHP 5.2.0 RC2 veröffentlicht | Ben | Nachrichten | 2 | 01.09.2006 16:05 |
| PHP 5.1 ist drausen | robo47 | Nachrichten | 5 | 28.11.2005 20:30 |
| Neue PHP "release candidates": PHP 4.4.2 RC 1 und PHP 5.1 RC 6 | Ben | Nachrichten | 1 | 21.11.2005 20:48 |
| PHP Code wird nicht ausgeführt ! | Dark Knight | PHP-Programmierung | 22 | 13.09.2005 14:12 |