Key Takeaways
- opcache ist eine integrierte Caching-Engine in PHP 5.5, die vorkompilierte Skript-Bytecode im Speicher gespeichert wird, was zu Leistungssteigerungen in PHP-Anwendungen führt. Es kann als Erweiterung ?lterer PHP -Versionen installiert werden und die mittlere Reaktionszeit einer Website um bis zu 14%verkürzen.
- opcache ist eine bessere L?sung als APC -Cache, da APC keine neueren PHP -Versionen unterstützt und zu Ausführungsfehlern führen kann. OPCache ist enger an PHP selbst gebunden, was zu h?ufigeren Updates und weniger Fehlern führt. Im Gegensatz zu APC funktioniert OPCACHE jedoch nicht als Daten zwischen Daten zwischen dem Caching -Engine.
- Um zu überprüfen, ob OpCache korrekt funktioniert, kann man opcache_get_configuration () und opcache_get_status () verwenden. Es stehen auch mehrere vorbereitete Skripte zur Verfügung, die alle Opcache-Konfigurations- und Statusdaten abrufen und auf benutzerfreundliche Weise anzeigen.
- Es ist m?glich, dass Opcache in einem Projekt aktiviert und auf einem einzelnen Server in einem anderen deaktiviert ist. Dies wird erreicht, indem Opcache auf globaler Ebene aktiviert und anschlie?end in bestimmten Projekten mit der Funktion ini_set () deaktiviert wird.
PHP in Version 5.5 verfügt über eine integrierte Caching-Engine-OPCache-, die vorkompilierte Skript-Bytecode im Speicher gespeichert ist. Wenn Sie mit APC oder XCache vertraut sind, wissen Sie bereits, wie solche Motoren funktionieren. Da jedes PHP -Skript zur Laufzeit kompiliert wird, wird ein Teil der Ausführungszeit zur Umwandlung des menschlichen lesbaren Codes in Code verwendet, der von der Maschine verstanden werden kann. Eine Bytecode -Cache -Engine wie Opcache, APC oder XCache nur einmal - w?hrend der ersten Ausführung einer bestimmten PHP -Datei. Anschlie?end wird das vorkompilierte Skript im Speicher gespeichert, was zu Leistungssteigerungen in Ihren PHP -Anwendungen führen sollte.
über dem Web finden Sie problemlos viele Tutorials, die alle OPCACHE -Installations- und Konfigurationsschritte abdecken (sie werden standardm??ig auf 5.5 aktiviert, k?nnen jedoch als Erweiterung bei ?lteren Versionen installiert werden). Lesen Sie den Artikel unten, um die Antworten auf einige der typischen Fragen zu verschiedenen praktischen Aspekten der Arbeit mit dieser speziellen Cache -Engine zu finden.
1. Ist Opcache überhaupt eine Installation wert? Welchen Geschwindigkeitsschub kann ich erwarten?
Natürlich kommt es darauf an. Wenn Ihr Server es schafft, den eingehenden Verkehr zu bew?ltigen und niedrige Reaktionszeiten zu führen, haben Sie wahrscheinlich nicht die Notwendigkeit, an der Leistung zu arbeiten. Aber auf einer gr??eren Website mit viel Verkehr kann jeder kleine Optimierungsschritt z?hlen. Durch die Implementierung von OPCache k?nnen Sie mehr Anfragen pro Sekunde bearbeiten und die Antwort schneller zurückgeben als ohne Bytecode -Caching -Engine. Da Opcache ziemlich einfach zu installieren und zu konfigurieren ist, werden Sie nicht zu viel Zeit damit verbringen, alles einzurichten.
Wenn Sie nach einigen OPCache -Leistungstests suchen, sollten Sie den Artikel von AppDynamics über die Implementierung dieser Cache -Engine auf jeden Fall lesen. In ihren Tests reduzierte die Installation von OPCAAE die mittlere Reaktionszeit einer Website um 14%. Die Verringerung der Antworten der unterschiedlichen Aktionen einer Webanwendung variierte zwischen 6% und 74%. Wie im Artikel erl?utert, k?nnen verschiedene Code -Teile mehr oder weniger von der Implementierung einer Bytecode -Caching -Engine profitieren. Ich ermutige Sie, den Artikel ausführlich zu lesen und zu überprüfen, wo Sie den h?chsten Leistungsschub erhalten k?nnen.
Wenn Sie nach anderen Ressourcen zur Opcache -Leistung suchen, überprüfen Sie die Beispiele auf Fideloper.com und Massivescale.com. Beide Tests gaben an
2. Ich benutze bereits APC -Cache. Soll ich zu Opcache migrieren?Ich denke du solltest. Es gibt einige Vorteile, die Opcache zu einer besseren L?sung als APC machen k?nnen.
Zun?chst funktioniert der APC -Cache nicht mit den neuesten PHP -Versionen. Es unterstützt PHP 5.5 überhaupt nicht. Es wird auch nicht empfohlen, es auf PHP 5.4 zu installieren, da diese Konfiguration zu Ausführungsfehlern führen kann, die die gesamte Anwendung brechen. überprüfen Sie einfach den Wikipedia -Artikel über PHP -Beschleuniger oder diesen Stapelüberlauf -Thread, um einige Details zu erhalten.
opcache ist jedoch mit PHP 5.5 gebündelt, sodass es definitiv mit dieser PHP -Version funktioniert. Wie in der Dokumentation geschrieben, kann es auch mit ?lteren PHP -Versionen installiert werden - von 5.2 bis 5,4. Im Allgemeinen ist Opcache enger an PHP selbst gebunden als andere Bytecode -Cache -Motoren - was zu h?ufigeren Updates und weniger Fehlern führen kann (hier finden Sie hier Details).
Das einzig Wichtigste, was Sie bei der Migration von APC zu Opcache erinnern sollten, ist die Tatsache, dass Letzteres nicht als Daten zwischen Daten zwischen dem Caching -Engine fungiert. Wenn Sie APC bereits implementiert haben, verwenden Sie m?glicherweise die Funktionen von APC_ADD () und APC_Fetch (), die als Schnittstelle zu einem Daten -Caching -Dienst dienen. OPCache ist nur eine Bytecode -Caching -Engine, sodass sie keine ?hnliche Funktionalit?t bietet. Wenn Sie vorhaben, von APC auf OPCache umzusteigen, denken Sie daran, diese Einschr?nkung zu berücksichtigen. Denken Sie daran, dass es das APCU -Projekt gibt, wenn Sie die Funktion "APC Userland" beibehalten m?chten (dank Oscar Merina, die in den Kommentaren darauf hingewiesen haben).
.
3. So überprüfen Sie, ob Opcache tats?chlich meine Dateien zwischengespeichert?
Wenn Sie Opcache bereits installiert und konfiguriert haben, k?nnen Sie feststellen, dass Sie steuern k?nnen, welche PHP -Dateien tats?chlich zwischengespeichert werden. Die gesamte Cache -Engine arbeitet im Hintergrund und ist für einen Besucher oder einen Webentwickler transparent. Um seinen Status zu überprüfen, k?nnen Sie eine der beiden Funktionen verwenden, die solche Informationen enthalten: opcache_get_configuration () und opcache_get_status (). Glücklicherweise gibt es einige vorbereitete Scrips, die alle Opcache -Konfigurations- und Statusdaten abrufen und auf freundliche Weise anzeigen. Sie müssen keinen Code selbst schreiben, und nehmen Sie einfach eines der Tools von diesen unten ab:
- Opcache -Bedienfeld,
-Opcache-status von Rasmus Lerdorf,
- Opcachegui von Pieter Hordijk,
-Opcache-gui von Andrew Collington.
In meinen Projekten verwende ich das Opcache-Gui-Skript, das alle Funktionen hat, die ich brauche. Um zu überprüfen, ob die Caching-Engine ordnungsgem?? funktioniert, lesen Sie einfach die Prozents?tze auf der Registerkarte "übersicht" auf der Opcache-Gui-Seite. Wenn die Speicherverwendung und die Trefferwerte gr??er als Null sind, bedeutet dies, dass der OPCACHE den PHP -Code zwischengespeichert und die zwischengespeicherten Dateien zur Verarbeitung der Anforderungen verwendet werden. Um eine Liste spezifischer PHP -Dateien anzuzeigen, die zwischengespeichert werden, navigieren Sie einfach zur Registerkarte ?Dateiverbrauch“. Schauen Sie sich die Dateiliste an, um sicherzustellen, dass die Dateien in Ihren Projekten zwischengespeichert wurden.
4. Gibt es eine rahmenspezifische Konfiguration, die ich festlegen sollte?
Grunds?tzlich sollte die Opcache -Engine für Sie als Codeautor transparent sein. Dies bedeutet, dass Sie jeden gewünschten Code in Ihre Anwendung einfügen k?nnen (was mit der von Ihnen verwendeten PHP -Version funktioniert) und Opcache sollte ihn ordnungsgem?? verarbeiten. Es funktioniert jedoch nur, wenn die OPCACHE -Konfiguration korrekt eingestellt ist. Eine falsche Cache -Engine -Konfiguration kann Ihre gesamte Website brechen.
Zuallererst müssen Sie in jedem typischen Projekt sicherstellen, dass die Option opcache.use_cwd auf true eingestellt ist. Wenn Sie diese Einstellung aktivieren, wird die OPCACHE -Engine die vollst?ndigen Dateipfade untersucht, um zwischen Dateien mit denselben Namen zu unterscheiden. Das Einstellen auf False führt zu Kollisionen zwischen Dateien mit demselben Grundnamen.
Es gibt auch eine Einstellung, die für Tools und Frameworks wichtig ist, die Anmerkungen verwenden. Wenn Sie Doctrine, Zend Framework 2 oder PHP -Einheit verwenden, sollten Sie die Einstellungen von Opcache.load_Coments und Opcache.Save_ComMents auf true festlegen. Im Ergebnis werden die Dokumentationskommentare Ihrer Dateien auch in den von OPCACHE generierten vorkompilierten Code aufgenommen. Mit dieser Einstellung k?nnen Sie ohne St?rungen mit Anmerkungen arbeiten.
Wenn Ihr Projekt auf einem bestimmten Framework oder einer Webanwendung basiert, ist es immer eine gute Idee, die Dokumentation auf Richtlinien bezüglich der Opcache -Konfiguration zu überprüfen. Zum Beispiel gibt es hier eine Beispielkonfiguration für Moodle.
5. Ich halte meine App -Konfiguration in einer PHP -Datei. Kann ich verhindern, dass es zwischengespeichert wird?
Wenn Ihr Projekt Dateien enth?lt, die h?ufiger als die anderen ge?ndert werden, k?nnen Sie sie vom Caching ausschlie?en. Es kann besonders praktisch sein, wenn es sich um PHP -Dateien handelt, die Konfigurationsanweisungen für Ihre Website enthalten. Wenn Sie sie davon abhalten, zwischengespeichert zu werden, k?nnen Sie sicher sein, dass jede ?nderung in einer solchen Datei in Ihrer Bewerbung sofort sichtbar ist.
MitOPCACHE k?nnen Sie eine Blacklist -Datei angeben, die alle Pfade enth?lt, die nicht von der Caching -Engine verarbeitet werden. Nachdem Sie die Anweisung opcache.blacklist_filename festgelegt haben, geben Sie einfach die richtige Dateiliste in den angegebenen Pfad ein. Auf der Seite "Dokumentation" enth?lt einige Beispiele zum Ausschlie?en bestimmter Dateien aus Cache.
6. Wie kann ich sowohl eine Entwicklung als auch eine Produktionsumgebung auf einem einzelnen Server ausführen, auf dem Opcache aktiviert ist?
Wenn Ihr Server mehrere Apps ausführt, sind Sie m?glicherweise bereit, Opcache nur in einigen von ihnen zu verwenden. Entwicklungs- und Teststellen sind Beispiele für solche Umgebungen, in denen das Aktivieren von Bytecode -Caching nicht vorzuziehen ist und mehr Schaden als Nutzen verursachen kann.
Glücklicherweise ist es m?glich, Opcache in einem Projekt aktiviert und in einem anderen auf einem einzigen Server deaktiviert zu werden. Zuerst müssen Sie den Opcache auf globaler Ebene aktivieren, indem Sie die Opcache.Enable -Anweisung in Ihre Php.ini -Datei festlegen. Wenn Sie dann in einem Ihrer Projekte kein Bytecode -Caching verwenden m?chten, deaktivieren Sie es einfach, indem Sie dieselbe Richtlinie mit der Funktion ini_set () auf die gleiche Richtlinie festlegen. Zuerst müssen Sie das globale Caching aktivieren und k?nnen es dann in einigen Projekten ?lokal“ deaktivieren. Sie k?nnen das Gegenteil nicht tun - das Caching mit Ini_Set () zu aktivieren ist nicht zul?ssig.
Einstellen von Opcache.einbar in eine Top -Datei in Ihrem Projekt deaktiviert das Caching, w?hrend es an anderer Stelle eingeschaltet wird.
Zusammenfassung
Ich hoffe, dass dieser Satz gemeinsamer Fragen und Antworten Ihnen einige praktische Informationen zur Verwendung von Opcache in einer PHP -Anwendung gegeben hat. Wenn Sie andere Fragen oder Kommentare zum Thema haben, k?nnen Sie sie unten ver?ffentlichen. Sie k?nnen mich auch über Google Plus kontaktieren.
h?ufig gestellte Fragen zu Opcache
Was ist die Hauptfunktion von Opcache in PHP? Dadurch muss PHP auf jede Anforderung Skripte geladen und analysiert werden, wodurch die Ausführungszeit und die Speicherverwendung verkürzt werden. Es ist besonders vorteilhaft für Websites mit hohem Verkehr oder komplexe Anwendungen, da es die Ladezeit erheblich beschleunigen und die Gesamtleistung verbessern kann.
Wie unterscheidet sich Opcache von anderen Caching -Mechanismen? Caching -Mechanismen, die die Ausgabe von PHP -Skripten speichern, speichert den vorkompilierten Bytecode von PHP -Skripten. Dies bedeutet, dass der PHP -Code nicht jedes Mal neu kompiliert werden muss, wenn eine Anfrage gestellt wird, was eine Menge Verarbeitungszeit und Ressourcen spart. Dies macht Opcache eine effizientere und effektivere L?sung zur Verbesserung der PHP -Leistung.
Wie kann ich Opcache in meiner PHP -Konfiguration aktivieren? Suchen Sie nach dem mit der Bezeichnung "Opcache] bezeichneten Abschnitt und ?ndern Sie den Wert von opcache. Vern?ht auf 1. Wenn der Abschnitt oder die Anweisung nicht vorhanden ist, k?nnen Sie diese hinzufügen. Speichern Sie die Datei, nachdem Sie die ?nderungen vorgenommen haben, und starten Sie Ihren Webserver neu, damit die ?nderungen wirksam werden sollen. Verwenden Sie die Funktion opcache_get_status () in PHP. Diese Funktion gibt eine Reihe von Informationen über den Opcache -Status zurück, einschlie?lich der Konfigurationseinstellungen, der Speicherverwendung und der Trefferquote. Sie k?nnen diese Informationen verwenden, um zu überprüfen, ob Opcache korrekt und effizient funktioniert. Php. Diese Funktion l?scht den Opcache und zwingt PHP, die Skripte auf der n?chsten Anfrage neu zu kompilieren. Beachten Sie jedoch, dass das h?ufigste L?schen des Opcache die Leistung negativ beeinflussen kann, da er den Zweck des Zwischenspeichers zunimmt. Verbessern Sie die PHP -Leistung, es ist nicht ohne potenzielle Probleme oder Einschr?nkungen. Beispielsweise kann dies zu Problemen mit dateibasierten Sitzungen oder Datei-basierten Benutzerdatenspeicher führen, da es die Skripte nicht neu kompiliert, es sei denn, der Zeitstempel der Datei ?ndert sich. Au?erdem ist es für Websites mit geringem Verkehr oder einfache Anwendungen m?glicherweise nicht so effektiv, da die Leistungssteigerung m?glicherweise nicht spürbar ist.
Wie kann ich die OPCACHE -Konfiguration für maximale Leistung optimieren? Zum Beispiel k?nnen Sie den Opcache.Memory_Conbumkt erh?hen, um mehr Speicher für die Speicherung des vorkompilierten Bytecode zuzuweisen. Sie k?nnen auch die opcache.revalidate_freq anpassen, um zu steuern, wie oft OPCACHE über ?nderungen in den Skripten prüft. Es ist jedoch standardm??ig ab PHP 5.5 enthalten. Für frühere Versionen müssen Sie es als PECL -Erweiterung installieren.
Kann ich Opcache mit anderen Caching -Mechanismen verwenden? Redis. W?hrend Opcache die PHP -Leistung verbessert, indem sie den vorkompilierten Bytecode zwischengespeichert, k?nnen andere Caching -Mechanismen die Leistung weiter verbessern, indem die Datenbankabfragen oder die Ausgabe von PHP -Skripten zwischengeeignet sind.
Ist Opcache für alle Arten von Websites oder Anwendungen geeignet? ??>
opcache ist besonders vorteilhaft für Websites mit hohem Verkehr oder komplexe Anwendungen, da es die Belastung erheblich beschleunigen kann Zeit und Verbesserung der Gesamtleistung. Es ist jedoch m?glicherweise nicht so effektiv für Websites mit geringem Verkehr oder einfache Anwendungen, da der Leistungsverst?rkung m?glicherweise nicht spürbar ist. Au?erdem kann dies zu Problemen mit dateibasierten Sitzungen oder dateibasierten Benutzerdatenspeicher führen. Sie sind daher nicht für alle Arten von Websites oder Anwendungen geeignet.Das obige ist der detaillierte Inhalt vonOpcache verstehen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

H?ufige Probleme und L?sungen für den variablen PHP -Umfang umfassen: 1. Die globale Variable kann innerhalb der Funktion nicht zugegriffen werden, und sie muss bei der Verwendung des globalen Schlüsselworts oder Parameters übergeben werden. 2. Die statische Variable wird statisch deklariert und nur einmal initialisiert und der Wert wird zwischen mehreren Aufrufen beibehalten. 3.. Hyperglobale Variablen wie $ _get und $ _post k?nnen direkt in jedem Bereich verwendet werden, aber Sie müssen auf eine sichere Filterung achten. 4. Die anonymen Funktionen müssen über das Schlüsselwort verwenden, und wenn Sie externe Variablen ?ndern, müssen Sie eine Referenz übergeben. Das Beherrschen dieser Regeln kann dazu beitragen, Fehler zu vermeiden und die Code -Stabilit?t zu verbessern.

Um PHP -Datei -Uploads sicher zu verarbeiten, müssen Sie die Quelle und die Type und die Eingabe des Dateinamens und des Pfades überprüfen, Serverbeschr?nkungen festlegen und Mediendateien zweimal verarbeiten. 1. überprüfen Sie die Upload -Quelle, um CSRF durch Token zu verhindern, und erkennen Sie den realen MIME -Typ über die Finfo_file mithilfe der Whitelist -Steuerung. 2. Benennen Sie die Datei in eine zuf?llige Zeichenfolge um und bestimmen Sie die Erweiterung, um sie gem?? dem Erkennungstyp in einem Verzeichnis ohne Web zu speichern. 3. Die PHP -Konfiguration begrenzt die Hochladengr??e und das tempor?re Verzeichnis Nginx/Apache verbietet den Zugriff auf das Upload -Verzeichnis. 4. Die GD -Bibliothek stellt die Bilder neu, um potenzielle b?swillige Daten zu l?schen.

Es gibt drei g?ngige Methoden für den PHP -Kommentarcode: 1. Verwenden Sie // oder #, um eine Codezeile zu blockieren, und es wird empfohlen, // zu verwenden. 2. Verwenden Sie /.../, um Codebl?cke mit mehreren Zeilen zu wickeln, die nicht verschachtelt werden k?nnen, aber gekreuzt werden k?nnen. 3.. Kombinationskenntnisse Kommentare wie die Verwendung / if () {} / Um Logikbl?cke zu steuern oder um die Effizienz mit Editor -Verknüpfungsschlüssel zu verbessern, sollten Sie auf die Schlie?ung von Symbolen achten und das Verschachteln bei der Verwendung vermeiden.

AgneeratorinphpiSamemory-effizientes WaytoiterateOverlargedatasetsByyieldingValueatimeinsteadofReturningThemallatonce.1.GeneratorsusetheyieldKeywordtoproduktenvaluesonDemand, ReducingMemoryUsage.2.TheyareusefulforfulforfulfordlingBiglopploups, Lesebiglochen, Leselungen, Lesebigs, Leselung, oder

Der Schlüssel zum Schreiben von PHP -Kommentaren liegt in der Kl?rung des Zwecks und der Spezifikationen. Kommentare sollten "Warum" und nicht "was getan" erkl?ren, um Redundanz oder zu Einfachheit zu vermeiden. 1. Verwenden Sie ein einheitliches Format wie Docblock (/*/) für Klassen- und Methodenbeschreibungen, um die Lesbarkeit und die Kompatibilit?t der Werkzeuge zu verbessern. 2. Betonen Sie die Gründe für die Logik, z. B. warum JS -Sprünge manuell ausgeben müssen. 3. Fügen Sie eine übersichtsbeschreibung vor komplexem Code hinzu, beschreiben Sie den Prozess in Schritten und helfen Sie, die Gesamtidee zu verstehen. V. Gute Anmerkungen k?nnen die Kommunikationskosten senken und die Effizienz der Code -Wartung verbessern.

Toinstallphpquickly, usexampponwindowsorhomebrewonmacos.1.onwindows, download undInstallxampp, SelectComponents, Startapache und PlaceFilesinhtdocscs.2.Anternativ, manuellinstallphpfrfr

In PHP k?nnen Sie quadratische Klammern oder lockige Klammern verwenden, um Zeichenfolgenspezifikationsspezifische Indexzeichen zu erhalten, aber quadratische Klammern werden empfohlen. Der Index startet von 0 und der Zugriff au?erhalb des Bereichs gibt einen Nullwert zurück und kann keinen Wert zugewiesen; MB_SUBSTR ist erforderlich, um Multi-Byte-Zeichen zu verarbeiten. Zum Beispiel: $ str = "Hallo"; echo $ str [0]; Ausgabe H; und chinesische Zeichen wie Mb_Substr ($ str, 1,1) müssen das richtige Ergebnis erzielen. In den tats?chlichen Anwendungen sollte die L?nge der Zeichenfolge vor dem Schleifen überprüft werden, dynamische Zeichenfolgen müssen für die Gültigkeit verifiziert werden, und mehrsprachige Projekte empfehlen, Multi-Byte-Sicherheitsfunktionen einheitlich zu verwenden.

Tolearnphpeffectival, startbysettingupalocalerverenVironmentusexs -LikexamppandacodeeditorikevScode.1) InstallxamppForapache, MySQL und Php.SeacodeeditorForsyntaxSupport.3) testyourscludingveliktingveliktelaThbiliodble.Neclyble.NektFile
