Anzeige
PHP 7 ist erschienen.
PHP 7 ist erschienen. (Bild: PHP.net)

Programmiersprache im Test: Mit PHP 7 wird das Internet schneller

PHP 7 ist erschienen.
PHP 7 ist erschienen. (Bild: PHP.net)

Version 7 des populären PHP-Interpreters ist erschienen. Mit diesem Release wird die Skriptsprache vor allem deutlich schneller und gleichzeitig sparsamer im Speicherverbrauch.

Nach mehrmaliger Verschiebung der Veröffentlichung von PHP 7 ist der beliebte PHP-Interpreter nun erschienen. Seit Facebook begonnen hat, mit Hiphop und später HHVM an eigenen Versionen des PHP-Interpreters zu arbeiten, um die Plattform zu beschleunigen, hat auch die PHP-Community realisiert, dass in der PHP-Geschwindigkeit noch viel Potenzial steckt. Darum konnte Dmitry Stogov von Zend Technologies durch Änderungen an internen Datenstrukturen bei PHP 7 eine erhebliche Verbesserung der Performance in realen Applikationen erzielen. Aus dem Projekt ist dann der PHP Next Generation (PHPNG) Branch entstanden und durch aktive Mithilfe vieler weiterer Entwickler das aktuelle PHP 7 Release. Hervorragend: Weil sich das Verhalten der Sprache PHP kaum geändert hat, müssen PHP-5-Applikationen nicht extra angepasst werden, um von der höheren Performance zu profitieren.

Anzeige

Der PHPNG-Branch vorausgegangen sind verschiedene fehlgeschlagene Experimente von Dmitry, unter anderem die Entwicklung eines Just In Time Compilers (JIT) für PHP. Ein JIT würde performancekritische Teile eines PHP-Programms direkt in Maschinencode übersetzen, so dass diese effizienter ausgeführt werden können. Der entwickelte JIT hat zwar in künstlichen Beispielen die Performance drastisch verbessert, allerdings nur zu kaum wahrnehmbaren Verbesserungen bei der Performance von realen Applikationen wie Wordpress geführt.

Interne Änderungen

Die wichtigste Änderung in PHP 7 betrifft die C-Datenstruktur ZVals (Zend Values) innerhalb der Zend Engine. ZVals repräsentieren Inhalte der Variablen in PHP. Die Implementierung der Referenzzählung zur Speicherverwaltung wurde geändert, was die Größe jedes ZVals von 24 auf 16 Byte reduziert. Die Anzahl der Referenzen wird nun an den Werten selbst gezählt, aber nur noch für Strings, Arrays und Objekte. So werden Zahlen und Wahrheitswerte im Zweifelsfall einfach doppelt im Speicher vorgehalten, weil eine Referenzierung mehr Platz und CPU-Zeit in Anspruch nähme.

Außerdem wurde die Größe der internen Datenstruktur Hashtable und aller ihrer Elemente reduziert, was sich auf alle Arrays in PHP auswirkt. Zusammen mit Optimierungen für unveränderbare Arrays verringern sich auch hier der Speicherverbrauch und die notwendigen Rechenoperationen deutlich. Dazu kommen noch Veränderungen im Speicherallozierungsverhalten von PHP, so dass die CPU Speicherallozierungen effizienter verarbeiten kann.

Diese Änderungen mit vielen weiteren kleinen Verbesserungen erzielen in synthetischen Benchmarks zwar nur einen Performancevorteil von rund 30 bis 40 Prozent, in realen Applikationen allerdings oft einen Performancevorteil von über 100 Prozent. Einen Überblick über die Performanceänderungen gibt Rasmus Lerdorfs Vortrag auf der diesjährigen Froscon.

Ein großer Nachteil der Änderungen trifft Benutzer der PHP-C-Extension-API: Die internen APIs haben sich so stark geändert, dass alle Extensions für PHP 7 angepasst werden müssen. Die Extensions, die standardmäßig mit PHP ausgeliefert werden, sind mittlerweile alle aktualisiert worden. Bis allerdings spezielle Extensions von PECL oder Drittherstellern mit PHP 7 funktionieren, kann es noch einige Zeit dauern.

Neue Features in PHP 7 

eye home zur Startseite
DASPRiD 07. Dez 2015

Ondrej sellt in einem experimentellen Repository alle PHP-Minor Versionen zur Verfügung...

Baron Münchhausen. 07. Dez 2015

+1 Solchen Pfosten ist es nicht bewusst, dass sie damit niemandem, der Ahnung hat was...

zilti 07. Dez 2015

DAS würde ich gerne sehen, dass man das mit Browsereinstellungen verhindern kann...

addik5 05. Dez 2015

https://en.wikipedia.org/wiki/No_true_Scotsman

tibrob 04. Dez 2015

Vergleiche doch einfach mal: Extension: http://php.net/manual/de/book.imagick.php...



Anzeige

Stellenmarkt
  1. Robert Bosch GmbH, Abstatt
  2. Computacenter AG & Co. oHG, Ratingen, Stuttgart
  3. Robert Bosch GmbH, Hildesheim
  4. SCHUBERTH GRUPPE, Magdeburg


Anzeige
Top-Angebote
  1. ab 219,00€
  2. (u. a. Core i7-6700K, i5-6600K, i7-5820K)
  3. (u. a. ROG Xonar Phoebus, Strix 2.0 Headset, Geforce GTX 960 Strix, Z170-P Mainboard, VG248QE...

Folgen Sie uns
       


  1. Layer-2-Bitstrom

    Bundesagentur fordert 100-MBit/s-Zugang für 19 Euro

  2. Thomson Reuters

    Terrordatenbank World-Check im Netz zu finden

  3. Linux-Distribution

    Ubuntu diskutiert Ende der 32-Bit-Unterstützung

  4. Anrufweiterschaltung

    Bundesnetzagentur schaltet falsche Ortsnetznummern ab

  5. Radeon RX 480 im Test

    Eine bessere Grafikkarte gibt es für den Preis nicht

  6. Overwatch

    Ranglistenspiele mit kleinen Hindernissen

  7. Fraunhofer SIT

    Volksverschlüsselung startet ohne Quellcode

  8. Axon 7 im Hands on

    Oneplus bekommt starke Konkurrenz

  9. Brexit

    Vodafone prüft Umzug des Konzernsitzes aus UK

  10. Patent

    Apple will Konzertaufnahmen verhindern



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Autotracker Tanktaler: Wen juckt der Datenschutz, wenn's Geld gibt?
Autotracker Tanktaler
Wen juckt der Datenschutz, wenn's Geld gibt?
  1. Ubeeqo Europcar-App vereint Mietwagen, Carsharing und Taxis
  2. Rearvision Ex-Apple-Ingenieure entwickeln Dualautokamera
  3. Tod von Anton Yelchin Verwirrender Automatikhebel führte bereits zu 41 Unfällen

Zenbook 3 im Hands on: Kleiner, leichter und schneller als das Macbook
Zenbook 3 im Hands on
Kleiner, leichter und schneller als das Macbook
  1. 8x Asus ROG 180-Hz-Display, Project Avalon, SLI-WaKü-Notebook & mehr
  2. Transformer 3 (Pro) Asus zeigt Detachable mit Kaby Lake
  3. Asus Zenbook Flip kommt für fast 800 Euro in den Handel

Smart City: Der Bürger gestaltet mit
Smart City
Der Bürger gestaltet mit
  1. Vernetztes Fahren Bosch will (fast) alle Parkplatzprobleme lösen

  1. Re: Kann mir mal einer erklären...

    DAUVersteher | 18:10

  2. Re: Bestätigen.

    Itchy | 18:10

  3. Re: 32bit gehen in Ordnung... (Keine Trollung)

    Kleine Schildkröte | 18:09

  4. Re: Kann Amazon durchaus verstehen

    0xDEADC0DE | 18:09

  5. Re: Warum bauen wie nicht alle aus Beton ?

    maverick1977 | 18:08


  1. 18:14

  2. 18:02

  3. 16:05

  4. 15:12

  5. 15:00

  6. 14:45

  7. 14:18

  8. 12:11


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel