phpbar.de logo

Mailinglisten-Archive

[php] nochmal performance

[php] nochmal performance

Gloss Mathias php_(at)_phpcenter.de
Thu, 11 Oct 2001 16:07:52 +0200


Aloha,

> Von: 	Manuel Jenne[SMTP:manuel.jenne_(at)_dieagentur.de]
>=20
> hatte vor ein paar Tagen schon mal um Eure Meinung betr. Performance
> gebeten:
>=20
....

> Der Kunde rechnet damit, dass die 300 User in einem Monat 300GB =
Traffic
> produzieren. Mein Hoster hat mich jetzt vorgewarnt, dass PHP und =
MySQL der
> Belastung evt. nicht gewachsen sein k=F6nnten.
>=20
Es wird dir wahrscheinlich nicht weiterhelfen, aber die Performance =
eines
Systems
ist immer schwer pauschal im Voraus zu bestimmen.

PHP:=20

Bei PHP h=E4ngts in erster Linie davon ab,  ob man die cgi- oder =
Modulvariante
benutzt. Letzterem ist aus Performancegr=FCnden der Vorzug zu geben.

Ob man Templates benutzt oder nicht spielt meiner Ansicht nach nicht so =
die
entscheidende Rolle sobald Datenbanken im Spiel sind, da hier die =
meiste
Zeit verlorgen geht.
Lieber sollte man sich mehr Gedanken =FCber die verwendeten Algorithmen =

machen, als auf Templates zu verzichten.

Als alternative zum zend-Cache gibts noch einen anderen dessen Name mir
gerade entfallen ist, der aber auch nur ein paar Prozent langsamer =
ist...

Datenbank:

Unabh=E4ngig von der verwendeten Datenbank werden hier die meisten =
Fehler
gemacht. Das f=E4ngt an beim Datenbankdesign, geht bei den verwendeten
SQL-Statements weiter und endet bei einer wohl=FCberlegten Indizierung
und der Verwendung von stored Procedures (die es bei MySQL gar nicht =
gibt).
Dies zu optimieren erfordert eine detaillierte Kenntnis der Interna der
verwendeten Datenbank, die sch=E4tzungsweise bei 3/4 aller Entwickler =
aus
Kosten- und Zeitgr=FCnden fehlt.
Ungl=FCcklicherweise geht hier aber auch am meisten Performance =
verloren :(

Kleines Beispiel aus der Praxis (ist zwar ABAP4 und Oracle aber was =
solls)
Ein paar externe Entwickler entwickeln ein Programm, das eine =
festgelegte
Funktion haben soll.
Entwickler sind fertig, auf dem Testsystem kann man mit der Laufzeit =
leben,
auf dem Produktivsystem ist die Laufzeit ~ 30 Stunden.
Nach der =DCberarbeitung des Programms durch unsere internen Entwickler
(Optimierung der Algorithmen, DB-Abfragen und Indexe) liegt die =
Laufzeit
jetzt bei ~ 4-5 Stunden.

=3D=3D> Die gleiche Aufgabe wurde von 2 Teams unterschiedlich gel=F6st, =
der
       Unterschied in der Performance ist Faktor 6-7!


Also viel Spa=DF beim Programmieren UND Optimieren ;)

Mathias



php::bar PHP Wiki   -   Listenarchive