Heim  >  Artikel  >  Backend-Entwicklung  >  Opcode-Caching macht PHP noch leistungsfähiger

Opcode-Caching macht PHP noch leistungsfähiger

PHPz
PHPzOriginal
2017-03-12 15:25:451586Durchsuche

Wie wir alle wissen, ist PHP eine interpretierte Sprache und ihre Ausführung kann in die folgenden Prozesse unterteilt werden:

  1. Scannen (Lexing) , PHP-Code wird in Sprachfragmente (Tokens) umgewandelt

  2. Parsing und Tokens werden in einfache und aussagekräftige Ausdrücke

  3. Kompilierung, kompiliert Ausdrücke in Opocdes

  4. Ausführung, führt Opcodes sequentiell, einen nach dem anderen aus, wodurch die Funktion eines PHP-Skripts realisiert wird.

In diesem Fall erfordern wiederholte Anfragen nach derselben Datei ein kontinuierliches Parsen, Kompilieren und Ausführen von PHP-Skripten, was zu viele Ressourcen verbraucht.

Traditioneller PHP-Betriebsmodus:

Opcode-Caching macht PHP noch leistungsfähiger

Um dieses Problem zu lösen, wurde die Opcode

Caching-Technologie ins Leben gerufen.

Was ist also Opcode-Cache?

Wenn der Interpreter die Analyse des Skriptcodes abschließt, generiert er Zwischencode, der direkt ausgeführt werden kann, auch bekannt als Opcode (Operate Code, Opcode). Beim Opcode-Caching wird der kompilierte Opcode-Code im Speicher zwischengespeichert. Wenn Sie dieses Skript das nächste Mal ausführen, finden Sie den Opcode-Code direkt im Cache und führen ihn direkt aus, ohne dass Zwischenschritte erforderlich sind Kompilierung, um den CPU- und Speicheraufwand zu reduzieren.

Wenn der Interpreter die Analyse des Skriptcodes abschließt, generiert er Zwischencode, der direkt ausgeführt werden kann, auch bekannt als Opcode (Operate Code, Opcode). Beim Opcode-Caching wird der kompilierte Opcode-Code im Speicher zwischengespeichert. Wenn Sie dieses Skript das nächste Mal ausführen, finden Sie den Opcode-Code direkt im Cache und führen ihn direkt aus, ohne dass Zwischenschritte erforderlich sind Kompilierung, um den CPU- und Speicheraufwand zu reduzieren.

Cache-Betriebsmodus:

Opcode-Caching macht PHP noch leistungsfähiger

opcache ist ein Opcode-Caching-Tool.

Der größte Unterschied zwischen Opcache und anderen Caching-Tools, der auch als Vorteil bezeichnet werden kann, besteht darin, dass es in den PHP-Quellcodebaum aufgenommen wurde und ein offizielles Produkt wird. Es wird immer mit PHP aktualisiert

, während es die anderen schon seit langem gibt. Derzeit wird die neue Version von PHP nicht unterstützt oder ist schlecht kompatibel. Zweitens ist Opcache nach dem Testen effizienter als andere Tools.

Wie aktiviert man Opcache?

Da opcahce nun als integriertes Tool in den PHP-Quellbaum eingefügt wurde, muss es sehr einfach zu öffnen sein. Die folgende Konfiguration wird empfohlen:

zend_extension=.././...php_opcache.dll(路径)
opcache.memory_consumption=128   #共享内存opcache.interned_strings_buffer=8   #存储临时字符串opcache.max_accelerated_files=4000   #缓存文件数opcache.revalidate_freq=60  #缓存时间opcache.fast_shutdown=1opcache.enable_cli=1 opcache.enable=1   #是否开启opcode缓存
Sie brauchen nur das Vorherige entfernen; Das ist es.

Opcache hat natürlich viele Konfigurationen, daher werde ich sie hier nicht alle auflisten. Die oben genannten sind Standardkonfigurationen und können allgemeine Anforderungen erfüllen.

Theoretisch gilt: Je größer die PHP-Datei und je komplexer die Logik, desto offensichtlicher wird der Effekt von Opcache sein und er wird eine große Rolle in Bezug auf Geschwindigkeit und Anti-Parallelität spielen.

Die Testergebnisse in der lokalen Umgebung sind wie folgt (Computerleistung ist begrenzt):

Opcode-Caching macht PHP noch leistungsfähiger

Service Servertest:

Opcode-Caching macht PHP noch leistungsfähiger

Opcode-Caching macht PHP noch leistungsfähiger

Es gibt eine deutliche Effizienzsteigerung.

Da der Opcache den zum ersten Mal ausgeführten Opcode in der Datei zwischenspeichert, sollte er nicht in der Testumgebung geöffnet werden. Sie kennen den Grund Code wird immer wieder geändert, aber das Ergebnis ist unverändert…………..

Um den Opcache-Cache manuell zu löschen, müssen Sie opcache_reset ausführen () um es zu löschen. Wenn der Opcache also online konfiguriert ist, muss er gelöscht werden. Sie können diese Funktion verwenden.

Das obige ist der detaillierte Inhalt vonOpcode-Caching macht PHP noch leistungsfähiger. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn