PHP 7 und Zend Engine OpCache

Ein Beitrag der Serie … definitiv!
Ein Artikel der Serie Notabene!

 

Bei bplaced ist schon seid PHP 5.5 ‚Zend OpCache‘ in Applikation. Die Erfahrungen mit ‚OpCache‘ haben dazu beigetragen, dass dieser nun in Verbindung mit PHP 7 optimal im Einsatz ist. Damit ist mit bplaced bei allen PHP-Versionen ‚Zend OpCache‘ aktiviert. Vollautomatisch und hiermit ist manuelles Anlegen von OpCache-Verzeichnissen oder Löschen des Cache nicht erforderlich.

Zend Engine OpCache

Ein ‚Opcode-Cache‘ ist ein System, um das Ergebnis der PHP-Code-Kompilierung* in Bytecode zwischenzuspeichern.

* PHP-Code-Kompilierung: Das Übersetzen des Quelltextes einer Programmiersprache in ein ausführbares Programm ergeht die Bezeichnung ‚kompilieren‘ (engl.: to compile). Ein solches Übersetzungs-Programm heißt Compiler.

Um die vielen leistungsstarken PHP-Funktionen zu nutzen, ist der PHP-Interpreter* auf dem Webservers installiert. Der PHP-Interpreter wandelt die Bytecodes in Befehle für Mikroprozessoren. Hiermit sind die Bytecodes für eine virtuelle Maschine geeignet. Eine virtuelle Machine ist auch ‚Zend Engine‘ und erzeugt den Mikroprozessor-Code. Hiermit ist dieser für CPU-Architekturen und Betriebssysteme einsetzbar.

* Ein Interpreter (Interpretierer) ist ein Programm, das einen Quellcode einliest, analysiert und ausführt. Demzufolge übersetzen die Assemblern oder Compilern auf dem System direkt in einen ausführbaren Mikroprozessor-Code.

Dieser Bytecode wird aber nach der Ausführung des Scripts verworfen und ist jedem Aufruf neu zu generieren. Die neue Generierung dauert mitunter länger als die Ausführung des Scripts. Darum gibt es den in PHP fest integrierten OpCache (Opcode-Cache). Der optimiert den Bytecode und speichert diesen für kommende Aufrufe. Ferner wurde bis zur PHP-Versionen 7.0 der OpCache im Arbeitsspeicher abgelegt, welches für Shared-Hosting-Servern nicht real zumindest nur diffizil einzusetzen war. Somit war OpCache nur mit V-Server oder Rootserver zu nutzen. In Folge PHP 7.0 ist der Bytecode vom OpCache auch in Dateien abzuspeichern und somit auf Shared-Hosting-Servern zu nutzen.

OpCache und die Gesamtladezeit einer Webseite

  • OpCache lässt die PHP-Anwendungen um etwa 50% beschleunigen und reduziert nur die Ausführungszeit für PHP-Scripte auf dem Webserver.
  • Die Gesamtladezeit einer Webseite ergeht den Faktoren, wie Größe und Anzahl der Bilder, CSS- und JavaScript-Dateien.
Zugehörend Serie Notabene!

 

Ein Beitrag der Serie … definitiv!
Ein Artikel der Serie Notabene!