Heim > Backend-Entwicklung > PHP7 > Erfahren Sie, wie PHP7 maximale Leistung erzielt

Erfahren Sie, wie PHP7 maximale Leistung erzielt

coldplay.xixi
Freigeben: 2023-02-17 16:28:01
nach vorne
3435 Leute haben es durchsucht

Erfahren Sie, wie PHP7 maximale Leistung erzielt

PHP7 wurde als größtes Versions-Upgrade und größtes Leistungs-Upgrade von PHP seit 10 Jahren veröffentlicht und hat in mehreren Tests sehr gut abgeschnitten Die Leistungsverbesserung ist offensichtlich, aber um die Leistung zu maximieren, möchte ich Sie dennoch an einige Dinge erinnern.

1. Opcache

Denken Sie daran, Zend Opcache zu aktivieren, da PHP7 auch ohne Opcache schneller ist als PHP-5.6 mit aktiviertem Opcache. Dies geschah also im vorherigen Testzeitraum Jemand hat Opcache noch nie aktiviert. Das Aktivieren von Opcache ist sehr einfach Der Compiler

    verwendet einen neueren Compiler, GCC 4.8 oder höher wird empfohlen, da nur GCC 4.8 oder höher PHP Global Register für Opline- und Execute_Data-Unterstützung aktiviert, was zu einer Leistungsverbesserung von 5 % führt (Wordpres gemessen von aus der QPS-Perspektive)
  1. Tatsächlich wird es auch von Versionen vor GCC 4.8 unterstützt, aber wir haben festgestellt, dass es Fehler in der Unterstützung gibt, daher muss diese Funktion in Version 4.8 oder höher aktiviert werden.

  2. 3. HugePage

In meinem vorherigen Artikel wurde auch Folgendes vorgestellt: Um Ihr PHP7 schneller zu machen, aktivieren Sie HugePages zuerst im System und dann die riesigen_code_pages von Opcache.

Nehmen Sie mein CentOS 6.5 als Beispiel :

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1
Nach dem Login kopieren

512 reservierten großen Seitenspeicher reservieren:

  1. $sudo sysctl vm.nr_hugepages=512
    Nach dem Login kopieren

Dann fügen Sie php.ini hinzu:

  1. $ cat /proc/meminfo | grep Huge
    AnonHugePages: 106496 kB
    HugePages_Total: 512
    HugePages_Free: 504
    HugePages_Rsvd: 27
    HugePages_Surp: 0
    Hugepagesize: 2048 kB
    Nach dem Login kopieren

Auf diese Weise verwendet PHP große Speicherseiten um eigene Textsegmente und große Speicherzuweisungen zu speichern, um TLB-Fehler zu reduzieren und die Leistung zu verbessern.

    4. Opcache-Dateicache aktivieren (experimentell), indem wir dies aktivieren Lassen Sie Opcache den Opcode-Cache in einer externen Datei zwischenspeichern.
  1. Hinzufügen in php.ini:

  2.  opcache.huge_code_pages=1
    Nach dem Login kopieren

Auf diese Weise speichert PHP einige Opcode-Binärexportdateien im Verzeichnis /tmp, die über den gesamten PHP-Lebenszyklus hinweg vorhanden sein können.


5. PGO

    Wenn Ihr PHP ist speziell für ein Projekt gedacht, beispielsweise nur für Ihr WordPress, Drupal oder etwas anderes. Dann können Sie versuchen, PHP speziell für Ihr Projekt zu verbessern.
  1. Insbesondere WordPress 4.1 Wird als Optimierungsszenario verwendet: Zuerst beim Kompilieren von PHP:

opcache.file_cache=/tmp
Nach dem Login kopieren

Dann trainieren Sie PHP mit Ihrem Projekt, zum Beispiel für WordPress:

$ make prof-gen
Nach dem Login kopieren
Das heißt, lassen Sie php-cgi die WordPress-Homepage 100 Mal ausführen, um dabei einige Profilinformationen zu generieren:
  1. $ sapi/cgi/php-cgi -T 100 /home/huixinchen/local/www/htdocs/wordpress/index.php >/dev/null
    Nach dem Login kopieren
    An dieser Stelle Zeit Das von Ihnen kompilierte PHP7 ist die kompilierte Version mit der höchsten Leistung, die auf Ihr Projekt zugeschnitten ist.

    Empfohlenes Tutorial: „
      PHP-Video-Tutorial

    Das obige ist der detaillierte Inhalt vonErfahren Sie, wie PHP7 maximale Leistung erzielt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage