www.wikidata.de-de.nina.az
PHP Beschleuniger sind Programme welche die Ausfuhrung von PHP Skripten beschleunigen sollen Die Basis solcher Beschleuniger bildet meist ein Bytecode Cache im Zusammenspiel mit einem Optimierer Ab Version 5 5 verwendet PHP den Zend Optimizer als nativen Beschleuniger 1 Inhaltsverzeichnis 1 Funktionsweise 2 Geschichte 3 Alternative Beschleuniger 3 1 eAccelerator 3 2 Alternative PHP Cache 3 3 XCache 3 4 Sonstige 4 Alternative Compiler 5 Siehe auch 6 EinzelnachweiseFunktionsweise BearbeitenEin PHP Skript wird zuerst in einen Bytecode ubersetzt bevor es ausgefuhrt wird Somit ware es notwendig diesen bei jedem Aufruf neu zu generieren Durch die Verwendung eines Bytecode Caches entfallt die standig neue Generierung da der Bytecode nur einmal generiert und dann zwischengespeichert wird Zusatzlich konnen PHP Beschleuniger Optimierungen am generierten Bytecode vornehmen sodass die Ausfuhrung nochmals beschleunigt wird 2 Geschichte BearbeitenBis zur Version 5 5 hatte PHP keinen integrierten Bytecode Cache sodass es notig war PHP Skripte bei jedem Aufruf neu zu ubersetzen was zu einer zusatzlichen Serverlast fuhrte Um das standige Neu Ubersetzen zu verhindern wurden externe Bytecode Caches als Erweiterungen entwickelt welche diese Funktion nachrusten sollten Der Einsatz einer solchen Erweiterung fuhrte zwar zu einer Steigerung der Ausfuhrgeschwindigkeit brachte aber andere Probleme mit sich So sorgte beispielsweise ein fehlerhaftes Caching des Alternative PHP Cache im Zusammenspiel mit PHP 5 4 fur Schwierigkeiten Als der vorher kommerzielle Zend Optimizer zur Open Source Software wurde 3 gelangte er in die nachstfolgende PHP Version 5 5 als nativer Beschleuniger 4 5 6 7 Alternative Beschleuniger BearbeitenNeben dem Zend Optimizer gibt es fur PHP noch einige weitere Beschleuniger welche meist ebenfalls einer freien Lizenz unterliegen eAccelerator Bearbeiten Hauptartikel eAccelerator eAccelerator ist ein quelloffener Beschleuniger und dient sowohl als Bytecode Cache als auch als Optimierer Er speichert den Bytecode im Shared Memory und nimmt Optimierungen zur Laufzeit vor Die Serverlast bzw Ausfuhrgeschwindigkeit ist laut den Entwicklern ein bis zehnmal geringer bzw schneller als der Einsatz ohne einen Beschleuniger Alternative PHP Cache Bearbeiten Hauptartikel Alternative PHP Cache Der Alternative PHP Cache kurz APC ist ebenfalls quelloffen hat jedoch die Besonderheit eines User Caches Damit konnen sowohl einfache Werte als auch komplexe Objekte zwischengespeichert werden Dies ist beispielsweise vorteilhaft fur das vermeiden sich wiederholender Datenbankabfragen und die damit verbundene geringere Last des Datenbankservers Die Lebensdauer eines Wertes ist einstellbar XCache Bearbeiten Hauptartikel XCache Ein relativ neuer PHP Beschleuniger ist XCache welcher unter Open Source Lizenz mit dem Fokus auf Sicherheit entwickelt wird Er speichert den generierten Bytecode im Arbeitsspeicher Ausserdem besitzt er ebenfalls einen User Cache kann jedoch im Gegensatz zu APC keine Objekte zwischenspeichern 8 Sonstige Bearbeiten Weitere Beschleuniger sind bzw waren Turck MMCache der Vorganger von eAccelerator ionCube PHP Accelerator Nusphere PhpExpress Windows Cache Extension for PHPAlternative Compiler BearbeitenAbgesehen von Beschleunigern existieren auch alternative PHP Compiler wie PHC HipHop oder Roadsend welche keine Erweiterung sondern ein eigenstandiges Programm darstellen und den PHP Code zunachst in C oder C Quelltext ubersetzen woraus dann Maschinensprache erzeugt wird Durch den Einsatz kann die Serverlast und der Speicherverbrauch ebenfalls reduziert werden in der Regel mehr als mit einem Bytecode Cache 9 Der Nachteil von alternativen PHP Compilern ist jedoch dass nicht der gesamte Sprachumfang unterstutzt wird da es sich dabei um eine eigene Implementierung der Scriptsprache handelt Dem hingegen verwenden andere Technologien von Grund auf einen Maschinencode Compiler so zum Beispiel die Node js Plattform welche den ausgehenden JavaScript Code mittels der integrierten V8 Engine im Just in time Verfahren in nativen Maschinencode ubersetzt Da es sich um keine eigenstandige Implementierung handelt ist hierbei auch der gesamte Sprachumfang von JavaScript verfugbar obwohl der Quellcode der eigentlichen Scriptsprache zu optimiertem Zielcode kompiliert wurde 10 Siehe auch BearbeitenBytecode Opcode Green ITEinzelnachweise Bearbeiten Alexander Neumann PHP 5 5 mit Bytecode Cache Zend Optimizer erschienen In heise Developer 21 Juni 2013 abgerufen am 22 Mai 2016 Michael Walter Voll Karacho PHP Beschleuniger im Vergleich In Linux Magazin Computec Media GmbH April 2005 abgerufen am 22 Mai 2016 Jens Ihlenfeld PHP Zend Optimizer ist jetzt Open Source In golem de 13 Februar 2013 abgerufen am 22 Mai 2016 PHP 5 5 0 released In php net The PHP Group 20 Juni 2013 abgerufen am 22 Mai 2016 englisch Jens Ihlenfeld Opcode Cache Zend Optimizer wird in PHP 5 5 integriert In golem de 8 Marz 2013 abgerufen am 22 Mai 2016 Alexander Neumann Zend Optimizer landet in PHP 5 5 In heise Developer Heise Medien 11 Marz 2013 abgerufen am 22 Mai 2016 Eric Herrmann Zend Optimizer Plus wird Teil von PHP 5 5 In entwickler de Software amp Support Media GmbH 8 Marz 2013 abgerufen am 22 Mai 2016 XcacheApi In xcache lighttpd net 3 September 2013 abgerufen am 22 Mai 2016 englisch Jens Ihlenfeld HipHop Facebook beschleunigt PHP In golem de 3 Februar 2010 abgerufen am 22 Mai 2016 PHP oder Node js Vorteile und Nachteile NodeCode Nicht mehr online verfugbar In NodeCode 8 Mai 2014 archiviert vom Original am 14 Mai 2016 abgerufen am 22 Mai 2016 nbsp Info Der Archivlink wurde automatisch eingesetzt und noch nicht gepruft Bitte prufe Original und Archivlink gemass Anleitung und entferne dann diesen Hinweis 1 2 Vorlage Webachiv IABot nodecode de Abgerufen von https de wikipedia org w index php title PHP Beschleuniger amp oldid 232813272