Heim  >  Artikel  >  Backend-Entwicklung  >  Ein Artikel, der erklärt, wie man die Leistung von PHP7 optimiert und verbessert

Ein Artikel, der erklärt, wie man die Leistung von PHP7 optimiert und verbessert

藏色散人
藏色散人nach vorne
2021-12-01 14:40:521826Durchsuche

PHP7 Als größtes Versions-Upgrade und größtes Leistungs-Upgrade von PHP seit 10 Jahren hat PHP7 in mehreren Tests offensichtliche Leistungsverbesserungen gezeigt. Um die Leistung zu maximieren, gibt es jedoch noch einige Dinge Ich möchte Sie daran erinnern.

Ein Artikel, der erklärt, wie man die Leistung von PHP7 optimiert und verbessert

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

Es wird empfohlen, einen neueren Compiler 4.8 oder höher zu verwenden, da dies nur für die Unterstützung von Global Register gilt aktiviert in PHP mit GCC 4.8 oder höher, was zu einer Leistungsverbesserung von 5 % führt (gemessen aus der QPS-Perspektive von Wordpres)

Tatsächlich wird es auch von Versionen vor GCC 4.8 unterstützt, aber wir haben festgestellt, dass es Folgendes unterstützt: Fehler, also Um diese Funktion zu aktivieren, muss Version 4.8 oder höher vorliegen Mein CentOS 6.5 als Beispiel. Weisen Sie 512 reservierten großen Seitenspeicher zu:

zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1"
:

$sudo sysctl vm.nr_hugepages=512

Dann fügen Sie php.ini hinzu:

Der Code lautet wie folgt:

$ cat /proc/meminfo | grep Huge
AnonHugePages: 106496 kB
HugePages_Total: 512
HugePages_Free: 504
HugePages_Rsvd: 27
HugePages_Surp: 0
Hugepagesize: 2048 kB

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.

Aktivieren Sie den Opcache-Datei-Cache (experimentell). Durch Aktivieren können wir Opcache den Opcode zwischenspeichern lassen Bei einigen Skripten wird es eine erhebliche Leistungsverbesserung geben:

Der Code lautet wie folgt:

 opcache.huge_code_pages=1

Auf diese Weise werden einige Opcode-Binär-Exportdateien im / zwischengespeichert. tmp-Verzeichnis, das im gesamten PHP-Lebenszyklus vorhanden sein kann

5. Mein vorheriger Artikel: Machen Sie Ihr PHP7 schneller (GCC PGO). Wenn Ihr PHP speziell für die Bereitstellung eines Projekts entwickelt wurde, B. nur für Ihr WordPress, Drupal oder etwas anderes, dann können Sie versuchen, PGO zu verwenden, um PHP zu verbessern und speziell die Leistung Ihres Projekts zu verbessern.

Spezifisch: Nehmen Sie zuerst WordPress 4.1 als Optimierungsszenario, wenn Sie PHP kompilieren :

Der Code lautet wie folgt:

opcache.file_cache=/tmp
Dann verwenden Sie Ihr Projekt, um PHP beispielsweise für WordPress zu trainieren:

Der Code lautet wie folgt:

$ make prof-gen

Das heißt, lassen Sie PHP-CGI die WordPress-Homepage 100 Mal ausführen um dabei einige Profilinformationen zu generieren.

Abschließend:

$ sapi/cgi/php-cgi -T 100 /home/huixinchen/local/www/htdocs/wordpress/index.php >/dev/null

Das PHP7, das Sie zu diesem Zeitpunkt kompilieren, ist die kompilierte Version mit der höchsten Leistung, die auf Ihr Projekt zugeschnitten ist.

Das ist alles für den Moment, ich werde weitere hinzufügen, wenn ich darüber nachdenke Später kann jeder es gerne versuchen, danke

Das obige ist der detaillierte Inhalt vonEin Artikel, der erklärt, wie man die Leistung von PHP7 optimiert und verbessert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen