Samstag, 22. Juni 2013

PHP 5.5 Zend Optimizer + ändert einiges

In der PHP 5.5 Version ist der Zend Optimizer integriert.
Während Golem davon berichtet das 5 bis 20 % mehr Request's drin liegen, geht PHP Magazin von 7 bis 13 % aus.

Das entspricht aber wohl nur einem ungeprüften Geschreibsel der Autoren dort die eigentlich nicht wirklich etwas gemessen haben.

Solche Dinge misst man direkt auf einem Server um alle anderen Dinge die das Netz mit sich bringt komplett auszuschließen.


siege -b -c200  -t60s http://localhost/porg/
** SIEGE 3.0.1
** Preparing 200 concurrent users for battle.
The server is now under siege...
Lifting the server siege..      done.

Transactions:        418957 hits
Availability:        100.00 %
Elapsed time:         59.06 secs
Data transferred:       383.57 MB
Response time:          0.03 secs
Transaction rate:      7093.75 trans/sec
Throughput:          6.49 MB/sec
Concurrency:        196.06
Successful transactions:      418961
Failed transactions:            0
Longest transaction:         1.31
Shortest transaction:         0.00



Schaut man sich diese Werte an und weiß dazu das es unter der letzten PHP 5.4 Version runde 40.000 Transactions / Sekunde waren, dann reden wir hier über mehr als 10 fache Leistung.

Tatsächlich ist der  beim Test diverser Opensource Titel mit mindestens Faktor 2 x mehr abgeschlossen worden.

Und es gibt Fälle - z.B. Systeme mit eingeschaltetem Debug die in der Situation bis 100x schneller sind.

Aber - es ist klar zu sehen - der Optimizer verbessert zwar die Situation aller PHP Programme, macht aber dennoch aus einem schlecht programmiertem System keine gutes System.

Vergleicht man aber hoch optimierte System die zudem 100% E_STRICT sind dann kann man klar erkennen - diese profitieren enorm von dem Optimizer - zeigen Leistungen in der Art wie bei compilierten und zu EXE Files gebundenen Programmen.

Ich kann mir also lebhaft vorstellen, das eine Optimierung in Richtung Optimizer noch höhere Mehrleistungen liefern werden.

Auffällig wenig profitieren Systeme vom Optimizer die einen ausgesprochenen Klassenkampf betreiben.

Klassen für jeden Mist und Kleinkram  sorgen bereits beim Betrieb ohne Optimizer für nicht gerade berauschende Performance.
Solche Systeme profitieren auch unter dem Optimizer sehr wenig.

Was also kann man dem entnehmen ?

  1. PHP <= 5.3.X ist tot
  2. es wird empfohlen gleich den großen Sprung  auf 5.5 zu machen
  3. bereits hoch optimierte Systeme profitieren am meisten
  4. Hoch optimierte Systeme erzielen noch mehr Abstand zu ihren Wettbewerbern
  5. es scheint möglich zu sein weitere Optimierungen für den Optimizer auszuführen
  6. es werden alle Dinge ab Netzwerkbuchse des Servers wichtiger 
  7. bei den Leistungen kann man auch Projekte in Angriff nehmen die vorher nicht machbar waren

PHP 5.5 inkl. Optimizer ist der absolute Hammer und den sollte jeder der mit PHP zu tun hat nehmen und zuschlagen.

Keine Kommentare: