Heim Backend-Entwicklung PHP-Tutorial Detaillierte Grafik- und Texterklärung zur PHP7-Nutzungserfahrung: stark verbesserte Leistung, starke Kompatibilität und unzureichende Erweiterungsunterstützung

Detaillierte Grafik- und Texterklärung zur PHP7-Nutzungserfahrung: stark verbesserte Leistung, starke Kompatibilität und unzureichende Erweiterungsunterstützung

Jul 27, 2017 pm 02:55 PM
php php7

In diesem Artikel werden hauptsächlich die Leistungsverbesserung, die starke Kompatibilität und die unzureichende Erweiterungsunterstützung der PHP 7-Installation und -Nutzung vorgestellt (seien Sie vorsichtig, wenn Sie PHP aktualisieren). Dies ist sehr praktisch und wertvoll

Mit der Veröffentlichung von PHP 7 sind die Leistung und Kompatibilität von PHP 7 in den letzten Tagen zu einem heißen Diskussionsthema geworden. Die hohe Leistung von PHP 7 hat bei vielen Menschen Interesse geweckt um es auszuprobieren, und einige sind „Early Adopters“. „Freunde haben PHP 7 bereits in der Produktionsumgebung angewendet. Gleichzeitig wurden auch beliebte Anwendungen wie LNMP zeitnah aktualisiert und unterstützen nun PHP 7.

Wenn es um PHP-Leistungsprobleme geht, muss ich das HHVM erwähnen, das ich zuvor geteilt habe. Dies ist ein von Facebook entwickeltes Tool zur Verbesserung der PHP-Leistung. Es verwendet Just-In-Time (JIT)-Kompilierung, um PHP zu konvertieren Code in eine Art Bytecode. Während des eigentlichen Testprozesses war HHVM ein qualitativer Sprung bei der Verbesserung der PHP-Leistung. Die effiziente PHP-Laufumgebung verbesserte die PHP-Leistung um mehr als das Neunfache.

In den letzten Jahren wurde PHP wegen seines Leistungsengpasses vielfach kritisiert. Viele Entwickler haben PHP aufgegeben und sind geflohen. Die perfekte Leistung von HHVM wirkt sich sehr nachteilig auf die Entwicklung von PHP aus. PHP 7 ist die Antwort der PHP-Community auf HHVM. Die offizielle Release-Version von PHP 7 hat die PHP-Leistung erheblich verbessert. Tatsächliche Tests haben ergeben, dass die Leistung von PHP 7 in einigen Fällen die von HHVM übertrifft.

Dieser Artikel vermittelt Ihnen die Installations- und Nutzungserfahrung von PHP 7. Freunde, die die Leistung von PHP 7 unbedingt erleben möchten, sollten vor dem offiziellen Upgrade von PHP ein paar weitere Programmkompatibilitätstests durchführen ist zu 99 % abwärtskompatibel, aber um auf der sicheren Seite zu sein, müssen wir dennoch vorsichtig sein, wenn wir es in Produktionsumgebungen anwenden.

PHP 7-Installations- und Nutzungserfahrung: stark verbesserte Leistung, starke Kompatibilität, unzureichende Erweiterungsunterstützung, seien Sie vorsichtig beim Upgrade von PHP

1 die hohe Leistung von PHP 7 Mehrere wichtige Punkte

Im Vergleich zur vorherigen PHP-Version kann man sagen, dass PHP 7 einen qualitativen Leistungssprung aufweist, aber wie das Sprichwort sagt: „Ein gutes Pferd gehört zu einem.“ „Ein guter Sattel, ein gutes Auto gehört zu einem Segel“, wenn Sie die Leistungsvorteile von PHP 7 voll ausschöpfen möchten, müssen Sie auch unter folgenden Gesichtspunkten vorbereitet werden: (Dieser Teil stammt vom PHP7-Kernentwickler, Autor von Yaf, Yar, Yac und andere Projekte: Laruence).

1. Denken Sie daran, Zend Opcache zu aktivieren. Hinzufügen:


2 Bei Verwendung eines neuen Compilers wird GCC 4.8 oder höher empfohlen, da nur GCC 4.8 oder höher PHP 7 Global Register für Opline- und Execute_Data-Unterstützung aktiviert, was zu einer Leistungsverbesserung von 5 % führt.

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

3. Durch die Aktivierung von HugePage wird PHP 7 schneller. Aktivieren Sie dann HugePages im System und aktivieren Sie dann CentOS 6.5 als Beispiel: $sudo sysctl vm.nr_hugepages=512, 512 reservierten großen Seitenspeicher zuweisen:


Dann fügen Sie Folgendes hinzu: opcache.huge_code_pages=1 zu php.ini, so zuerst , PHP verwendet große Speicherseiten, um seine eigenen Textsegmente und großen Speicherzuweisungen zu speichern, wodurch TLB-Fehler reduziert und die Leistung verbessert werden.

$ 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
4 Aktivieren Sie den Opcache-Dateicache Der Opcode-Cache in einer externen Datei führt zu einer erheblichen Leistungsverbesserung. Die Methode besteht darin, Folgendes zu php.ini hinzuzufügen: opcache.file_cache=/tmp. Auf diese Weise speichert PHP einige Opcode-Binärexportdateien im Verzeichnis /tmp, die während des gesamten PHP-Lebenszyklus vorhanden sein können. Wenn Ihr PHP speziell für die Bereitstellung eines Projekts konzipiert ist, beispielsweise nur für WordPress, Drupal oder etwas anderes, können Sie versuchen, PGO zu verwenden, um PHP zu verbessern und gezielt die Leistung Ihres Projekts zu verbessern. Nehmen wir insbesondere WordPress 4.1 als Optimierungsszenario ... Zuerst beim Kompilieren von PHP: $ make prof-gen.

6. Verwenden Sie dann Ihr Projekt, um PHP beispielsweise für WordPress zu trainieren:$ sapi/cgi/php-cgi -T 100 /home/huixinchen/local/www/htdocs/wordpress/index.php > ;/ dev/null, das heißt, php-cgi lässt die WordPress-Homepage 100 Mal ausführen und generiert dabei einige Profilinformationen. Abschließend:

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


$ make prof-clean
$ make prof-use && make install
Nach dem Login kopieren

2. PHP 7-Installation und -Kompilierung

1. PHP 7 offizielle Website:

2 -on-Fähigkeit Freunde, die stark sind, können direkt auf die offizielle Website gehen, um PHP 7 herunterzuladen und es dann manuell zu bearbeiten und zu installieren. Wenn Sie es gewohnt sind, das LNMP-Ein-Klick-Installationspaket des lnmp.org-Webmasters zu verwenden, können Sie die Veröffentlichung der Betaversion von LNMP 1.3 ausprobieren, die PHP7-Unterstützung hinzugefügt hat: eine Methode zur reibungslosen Migration der Website zum LNMP- oder LAMP-Website-Builder Umfeld.

3. Das von OneinStack bereitgestellte LNMP-Installationspaket verfügt bereits über eine Ein-Klick-Installation für PHP 7. Bei der Ausführung des Skripts können Sie auswählen, dass für PHP 7 derzeit nur die offizielle Zend Opcache-Erweiterung zur Installation verfügbar ist . .

4. OneinStack hat PHP 7 erfolgreich installiert.

5. Dies ist die PHP 7-Informationsanzeige.

6. Dies ist das Opcache-Kontrollfeld für PHP 7, das von OneinStack bereitgestellt wird.

3. Leistungsvergleich zwischen PHP 7 und alten Versionen von PHP und HHVM

1 Entwickler Verglichen mit der Leistung von PHP 5.6 unter beliebten Programmen wie WordPress und Drupal ist es offensichtlich, dass sich die Leistung von PHP 7 stark verbessert hat.

2. Bei Programmen wie WordPress verbessert PHP 7 nicht nur die individuelle Ausführungsgeschwindigkeit, sondern je länger WordPress auf PHP 7 läuft, desto größer ist die Leistungsverbesserung.

3. Wie oben erwähnt, hat die Leistungsverbesserung von PHP 7 die von HHVM in einigen Aspekten übertroffen. Dies ist PHP 5.6, das von der offiziellen Website von zend.com bereitgestellt wird 7. Vergleichsergebnisse der HHVM-Ausführungseffizienz unter verschiedenen Programmen.

4. Testen Sie die Ausführungseffizienz von PHP 5.6, PHP 7 und HHVM auf dem professionellen Open-Source-E-Commerce-System Magento. PHP 7 ist doppelt so schnell wie PHP 5.6 und der Speicherverbrauch ist 30 % geringer als PHP 5.6.

5. Die Effizienz beim Testen von PHP 7 auf Drupal 8 ist die schnellste und übertrifft HHVM.

6 Beim WordPress-Test wurde festgestellt, dass PHP 5.6 100 MB Speicher zur Ausführung benötigt, während PHP 7 nur 25 MB benötigt.

7. In Bezug auf die unterschiedlichen Programmausführungsgeschwindigkeiten ist PHP 7 offensichtlich führend. Ruby 2.1, Python 2.7.8 und Perl 5.18.4 liegen allesamt hinter PHP 7 .

4. PHP 7-Leistungstestbericht

1. Es ist unbegründet, wie hoch die Leistung des PHP 7-Laufprogramms ist ? Wolltuch? Hier verwendet der Stamm ein brandneues WordPress als Testobjekt. Der unter PHP 7 ausgeführte WordPress-Homepage-Ladezeittest zeigt 0,029 Sekunden und der Speicher beträgt 3,39 MB.

2. Dies ist die Seitenladezeit derselben WordPress-Seite unter PHP 5.6: 1,955 Sekunden, und der belegte Speicher beträgt 3,92 MB. Aus Datensicht hat PHP 7 PHP 5.6 vollständig besiegt.

3. Die Effizienz der Ausführung von WordPress in PHP 7 wurde im Vergleich zur Vorgängerversion tatsächlich qualitativ verbessert. Um die Leistung von PHP 7 vollständig zu verstehen Webleistung entsprechend dem Druck des Website-Servers Die Testmethode besteht darin, mit Webbench 200 und 400 Verbindungen in 10 Sekunden zu simulieren, und die Geschwindigkeit beträgt mehr als 8000 Seiten/Minute.

4. Zu diesem Zeitpunkt beträgt die Systemlast des VPS-Servers 3,49.

5. Erhöhen Sie die Anzahl der simulierten Verbindungen auf 1600, und die Geschwindigkeit bleibt über 8000 Seiten/Minute.

6. Zu diesem Zeitpunkt beträgt die Systemauslastung des VPS-Servers 17, was etwas schwierig sein dürfte.

7. Erhöhen Sie die Anzahl der simulierten Verbindungen auf 5000, die Geschwindigkeit beträgt 4800 Seiten/Minute und die Geschwindigkeit beginnt sich zu verlangsamen.

8. Zu diesem Zeitpunkt beträgt die Systemlast des VPS-Servers 23 und der Server ist überlastet.

9 Um die Ausdauergrenze von PHP 7 auf diesem VPS-Host zu testen, simulierte Webbench 10.000 Verbindungen, um 20 Sekunden lang kontinuierlich auf den Server zuzugreifen.

10. Zu diesem Zeitpunkt beträgt die Systemlast des VPS-Servers fast 90, was das Limit erreichen sollte, aber der Server stürzt immer noch nicht ab.

11. Schauen wir uns als Nächstes die Stresstestergebnisse desselben konfigurierten VPS-Hosts an, auf dem WordPress ausgeführt wird. Verwenden Sie zunächst Webbench, um 200 und 400 Verbindungen in 10 Sekunden zu simulieren Die Geschwindigkeit beträgt 3600 Seiten/Minute, was halb so langsam ist wie beim obigen PHP 7-Test.

12. Dies ist die Systemlast von 200 und 400 Verbindungen im PHP 5.6-Test. Sie hat 10 erreicht, was deutlich höher ist als die im PHP 7 getesteten 3,49 Umfeld.

13. Im PHP 5.6-Test wurde die Anzahl der simulierten Verbindungen auf 1000 und 2000 erhöht. Zu diesem Zeitpunkt ist die Geschwindigkeit auf 1600 Seiten/Minute gesunken Auch die Zahl der erfolgreichen Verbindungen ist auf 500 gesunken. Beim Test mit PHP 7 waren es rund 2.700.

14 Zu diesem Zeitpunkt hat die Systemlast 17 erreicht.

15. Testen Sie mit Webbench die Anzahl der Verbindungen in PHP 5.6 auf 10.000 und greifen Sie innerhalb von 20 Sekunden kontinuierlich auf den Server zu. Zu diesem Zeitpunkt bleibt der Test ohne Ergebnisse hängen.

16. Die Systemlast des VPS-Servers hat hier mehr als 1.000 erreicht und der Server ist abgestürzt.

17. Die WordPress-Website unter PHP 5.6 ist nicht verfügbar.

5. PHP 7-Kompatibilitätsprobleme

1. Derzeit unterstützen inländische Discuz und andere PHP 7 und PHP-Erweiterungen nicht Nicht nur der offizielle Opcache kann verwendet werden, sondern auch andere wie eAccelerator, xcache, memcached usw. Sie können jederzeit auf die erweiterte Supportliste achten:

2. Nachher Beim Testen läuft PHP 7 mit WordPress. Kein Problem.

3. Die Installation des WordPress-Plugins unter PHP 7 ist kein Problem.

4. PHP 7 weist möglicherweise Inkompatibilitätsprobleme mit einigen Funktionen, Operatoren usw. auf, aber 99 % der Programme verwenden diese möglicherweise nicht.

6. Zusammenfassung der Installations- und Nutzungserfahrungen von PHP 7

1 Eine Überraschung nach der Verwendung von PHP 7 ist, dass die Leistung von PHP 7, wie von ausländischen Entwicklern getestet, einfach ist Es ist mit HHVM vergleichbar. Da HHVM einen Just-in-Time-Compiler (Just In Time) verwendet, um PHP-Code in Maschinenanweisungen zu kompilieren, müssen viele PHP-Programme verbessert werden, wenn sie auf HHVM ausgeführt werden.

2. PHP 7 verfügt über die ultrahohe Leistung von HHVM und gleichzeitig über den Vorteil der PHP-Abwärtskompatibilität. Ich glaube, dass PHP 7 in naher Zukunft von immer mehr Menschen erkannt und akzeptiert wird Zukunft. Obwohl es derzeit nicht viele Erweiterungen wie Caching und Beschleunigung gibt, die PHP 7 unterstützen, ist es nur eine Frage der Zeit, dass immer mehr Entwickler in die Reihen der PHP 7-Entwicklung einsteigen werden.

Das obige ist der detaillierte Inhalt vonDetaillierte Grafik- und Texterklärung zur PHP7-Nutzungserfahrung: stark verbesserte Leistung, starke Kompatibilität und unzureichende Erweiterungsunterstützung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

7 PHP-Funktionen, die ich leider vorher nicht kannte 7 PHP-Funktionen, die ich leider vorher nicht kannte Nov 13, 2024 am 09:42 AM

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Wie analysiert und verarbeitet man HTML/XML in PHP? Wie analysiert und verarbeitet man HTML/XML in PHP? Feb 07, 2025 am 11:57 AM

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Apr 05, 2025 am 12:04 AM

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge PHP -Programm zum Zählen von Vokalen in einer Zeichenfolge Feb 07, 2025 pm 12:12 PM

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Wie setze ich nach dem Neustart des Systems automatisch Berechtigungen von Unixsocket fest? Wie setze ich nach dem Neustart des Systems automatisch Berechtigungen von Unixsocket fest? Mar 31, 2025 pm 11:54 PM

So setzen Sie die Berechtigungen von Unixsocket automatisch nach dem Neustart des Systems. Jedes Mal, wenn das System neu startet, müssen wir den folgenden Befehl ausführen, um die Berechtigungen von Unixsocket: sudo ...

Erklären Sie die späte statische Bindung in PHP (statisch: :). Erklären Sie die späte statische Bindung in PHP (statisch: :). Apr 03, 2025 am 12:04 AM

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

See all articles