Heim >Backend-Entwicklung >PHP-Tutorial >Github ist voller Freude, PHP-Code auf Gott-Ebene löst Beschwerden aus

Github ist voller Freude, PHP-Code auf Gott-Ebene löst Beschwerden aus

WBOY
WBOYOriginal
2016-08-08 09:33:04852Durchsuche
Überblick: Vorgestern tauchte plötzlich im PHP-Bereich von Github ein Code auf, der die Betriebseffizienz um 70 % verbessern kann, was bei vielen Internetnutzern auf der ganzen Welt Beschwerden und Spott auslöste , „Großartig!“, „Gut gemacht!“, „PHP ist die Sprache Nummer eins der Welt!“ Programmierer, die normalerweise ernsthaft und fleißig sind, haben ihrer humorvollen Seite freien Lauf gelassen, und Github ist zu einem Meer der Freude geworden.

Vorgestern tauchte plötzlich ein Codestück im PHP-Bereich von Github auf, der die Betriebseffizienz um 70 % verbessern kann, was bei vielen Internetnutzern auf der ganzen Welt Beschwerden und Spott auslöste Welt, „großartig!“, „Gut gemacht!“, „PHP ist die Sprache Nummer eins der Welt!“ Programmierer, die normalerweise ernsthaft und fleißig sind, haben ihrer humorvollen Seite freien Lauf gelassen, und Github ist zu einem Meer der Freude geworden.

Werfen wir zunächst einen Blick auf diesen göttlichen Code:

Was dieser Code bewirkt, ist eines: den Garbage Collector von PHP deaktivieren. Dann testeten Internetnutzer die Auswirkung der Verwendung des Garbage Collectors bei deaktiviertem PHP:

Vorher: Speichernutzung: 163,66 MB (Spitze: 403,82 MB), Zeit: 246,25 s
Nachher: ​​Speichernutzung: 163,34 MB (Spitze: 350,36 MB), Zeit: 99,55 Sekunden
Die zum Ausführen eines bestimmten PHP-Programms erforderliche Zeit wurde von 246,25 Sekunden auf 99,55 Sekunden reduziert!
Vorher: Speichernutzung: 152,71 MB (Spitze: 335,9 MB), Zeit: 195,99 s
Nachher: ​​Speichernutzung: 164 MB (Spitze: 308,02 MB), Zeit: 104,06 s
Die Zeit, die zum Ausführen eines bestimmten PHP-Programms benötigt wird, wurde von 195,99 Sekunden auf 104,06 Sekunden reduziert!
......

Im Allgemeinen kann die Deaktivierung des Garbage Collectors die Betriebseffizienz von PHP um 70 % verbessern.

Was war die ursprüngliche Absicht des vorherigen Designs, da die Garbage Collection von PHP so unzuverlässig ist?

Denn in C/C ist die Speicherverwaltung eine sehr problematische Sache. Die Verwendung und Freigabe von Speicher erfordert, dass Programmierer Programme manuell schreiben. Wenn etwas weggelassen wird, kann dies zu einer Verschwendung von Ressourcen oder sogar zu Speicherverlusten führen. . Um dieses Problem beim PHP-Design zu vermeiden, wurde daher ein Garbage Collector eingeführt, der den Speicher nutzloser Objekte automatisch freigibt.

Es ist erwähnenswert, dass PHP beim Ausführen des Recycling-Algorithmus zusätzliche Zeit benötigt. Obwohl in kleineren Projekten dieser zusätzliche Verbrauch minimal ist, hat dieser Verbrauch bei der Ausführung großer Projekte große Auswirkungen, da mehrere Recycling-Threads gleichzeitig gestartet werden. Die intuitivste Manifestation ist, dass die Laufzeit des Programms länger wird.

Das Deaktivieren der PHP-Garbage Collection ist die einfachste und einfachste Möglichkeit, die Effizienz des Programms zu verbessern. Das ist so, als ob bei einer Bein- oder Fußverletzung die Amputation am einfachsten ist.

Sobald der God-Level-Code bekannt gegeben wurde, waren die Programmierer auf Github überglücklich:

Homm, der zuerst kam, drückte seine Überraschung über diese Art der Verarbeitung aus und verstand nicht, warum das so war wurde so gemacht. Habe es gemacht und objektiv kommentiert, dass diese Verarbeitungsmethode nicht gut aussieht:

Dann kam Smilingtechguy und fing an zu necken: „Nun, es gibt keine Kommentare, Lassen Sie uns PHPs Kernel deaktivieren, und wir werden nicht erklären, warum >

Um nur zu sagen, dass PHP die erste Sprache der Welt ist, es gibt Versionen In mehreren Ländern wird gesagt, dass die Verwendung weniger Codes die Effizienz um 70 % steigern kann. PHP gilt zu Recht als die erste Sprache der Welt:

Es gibt auch süße:

Der Garbage-Collection-Mechanismus von PHP ist zum Witz aller geworden dass das einfache Deaktivieren der PHP-Garbage-Collection Probleme wie Speicherüberlauf nicht lösen kann. Wie wird PHP in Zukunft mit Speicherverwaltung und Betriebseffizienz umgehen?

Das Obige hat die Freude an Github geweckt, und der PHP-Code auf Gott-Ebene hat viele Beschwerden verursacht, einschließlich des Inhalts. Ich hoffe, er wird für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.

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