Heim  >  Artikel  >  Backend-Entwicklung  >  Neun Methoden des PHP-Caching

Neun Methoden des PHP-Caching

墨辰丷
墨辰丷Original
2018-06-07 11:37:332986Durchsuche

In diesem Artikel werden hauptsächlich neun Methoden des PHP-Caching vorgestellt. Ich hoffe, dass er für alle hilfreich ist.

1. Statisches Caching der gesamten Seite

Das heißt, alle Seiten werden in statische HTML-Seiten generiert, auf die Benutzer beim Besuch direkt zugreifen können, ohne zu PHP zu wechseln Server-Parsing-Prozess. Diese Methode ist häufiger in CMS-Systemen wie dedecms anzutreffen.

Eine gängige Implementierungsmethode ist die Verwendung von Ausgabe-Caching:

Ob_start()

*** *** Code zum Ausführen************

$content = Ob_get_contents();

****Zwischengespeicherten Inhalt in eine HTML-Datei schreiben*****

Ob_end_clean();

2. Teilweises Seiten-Caching

Diese Methode dient dazu, die Teile einer Seite, die sich nicht häufig ändern, statisch zwischenzuspeichern Sich ändernde Blöcke werden nicht zwischengespeichert und schließlich zur Anzeige zusammengefügt. Dies kann mit einer Methode ähnlich wie ob_get_contents erreicht werden, oder es kann eine Seitenfragment-Caching-Strategie wie ESI verwendet werden, um relativ statische Fragmente in dynamischen Seiten zwischenzuspeichern. Bitte Baidu, hier nicht näher beschrieben).

Diese Methode kann für Produktseiten in Einkaufszentren verwendet werden

3. Daten-Caching

Wie der Name schon sagt, handelt es sich um eine Möglichkeit Zwischenspeichern von Daten. Wenn beispielsweise bestimmte Produktinformationen im Einkaufszentrum mithilfe der Produkt-ID angefordert werden, werden Daten einschließlich Geschäftsinformationen, Produktinformationen und anderen Daten abgerufen. Zu diesem Zeitpunkt können diese Daten in einer PHP-Datei zwischengespeichert werden. und der Dateiname enthält die Produkt-ID, um eine eindeutige Kennung zu erstellen. Wenn jemand dieses Produkt das nächste Mal anzeigen möchte, passt er zunächst die Informationen in dieser Datei an, ohne die Datenbank abzufragen ein PHP-Array oder ähnliches;

Diese Methode wird im Ecmall-Mall-System verwendet

Tatsächlich ist dies der Fall Die gleiche Idee wie beim Datencaching, bei dem es sich um das Zwischenspeichern der aus der Abfrage erhaltenen Daten in einer Datei handelt, werden die Daten beim nächsten Mal direkt aus dieser Datei abgerufen, ohne die Datenbank zu überprüfen. aber der Cache-Dateiname muss hier möglicherweise als Basispunkt abgefragt werden, um eine eindeutige Kennung zu erstellen

Caching basierend auf Zeitänderungen

Eigentlich handelt es sich hierbei nicht um eine echte Caching-Methode; Die oben genannten Caching-Technologien 2, 3 und 4 verwenden im Allgemeinen eine Zeitänderungsbeurteilung. Das heißt, Sie müssen eine gültige Zeit für die zwischengespeicherte Datei festlegen. Innerhalb dieser gültigen Zeit wird jedoch zuerst der Inhalt der zwischengespeicherten Datei abgerufen , wenn die eingestellte Cache-Zeit überschritten wird, müssen die Daten aus der Datenbank abgerufen und erstellt werden. Ich habe beispielsweise festgelegt, dass die Homepage unseres Einkaufszentrums alle 2 Stunden aktualisiert wird 🎜>5. Cache entsprechend Inhaltsänderungen

Dies ist auch nicht unabhängig. Die Caching-Technologie muss in Kombination verwendet werden, d. h. wenn der Datenbankinhalt geändert wird, wird die Cache-Datei sofort aktualisiert 🎜>

Zum Beispiel muss in einem Einkaufszentrum mit einem großen Personenstrom und vielen Produkten die Produkttabelle relativ groß sein, und der Druck auf diese Tabelle ist auch relativ groß. Wir können auch die Produktanzeigeseite zwischenspeichern.

Wenn der Händler die Produktinformationen im Hintergrund ändert, klicken Sie auf Speichern. Gleichzeitig aktualisieren wir die Cache-Datei. Der Käufer greift dann auf die Produktinformationen zu. Wenn Sie auf eine statische Seite zugreifen, ist dies nicht der Fall Sie müssen auf die Datenbank zugreifen.

Stellen Sie sich vor, wenn die Produktseite nicht zwischengespeichert ist, müssen Sie jedes Mal, wenn Sie auf ein Produkt zugreifen, in die Datenbank gehen, um es zu überprüfen. Wenn dort Tausende von Personen surfen Produkte online, der Server steht unter großem Druck;

6. In-Memory-Caching

Wenn es darum geht, denken Sie vielleicht als Erstes an Memcached ; memcached ist ein leistungsstarker verteilter Speicher-Cache-Server. Der allgemeine Verwendungszweck besteht darin, die Anzahl der Datenbankzugriffe durch Zwischenspeichern von Datenbankabfrageergebnissen zu reduzieren, um die Geschwindigkeit und Skalierbarkeit dynamischer Webanwendungen zu erhöhen.

Es speichert die Informationen, die zwischengespeichert werden müssen, im Systemspeicher. Wenn die Informationen abgerufen werden müssen, wird sie direkt aus dem Speicher abgerufen. Die am häufigsten verwendete Methode ist die Schlüssel-Wert-Methode.

<?php 
   $memcachehost = &#39;192.168.6.191&#39;;
   $memcacheport = 11211;
   $memcachelife = 60;
   $memcache = new Memcache;
   $memcache->connect($memcachehost,$memcacheport) or die ("Could not connect");
   $memcache->set(&#39;key&#39;,&#39;缓存的内容&#39;);
   $get = $memcache->get($key);    //获取信息
?>
7. Apache-Cache-Modul

Nachdem Apache installiert wurde, darf es nicht zwischengespeichert werden. Wenn ein externer Cache oder Squid-Server eine Webbeschleunigung erfordert, muss diese in httpd.conf festgelegt werden. Voraussetzung ist natürlich, dass das mod_cache-Modul bei der Installation von Apache aktiviert werden muss.

Bei der Installation von Apache: ./configure –enable-cache –enable-disk-cache –enable-mem-cache

8. PHP-APC-Cache-Erweiterung

Php hat eine APC-Cache-Erweiterung, die unter Windows php_apc.dll ist. Sie müssen dieses Modul zuerst laden und es dann in php.ini konfigurieren:

   extension=php_apc.dll 
   apc.rfc1867 = on 
   upload_max_filesize = 100M 
   post_max_size = 100M 
   apc.max_file_size = 200M 
   upload_max_filesize = 1000M 
   post_max_size = 1000M 
   max_execution_time = 600 ;  每个PHP页面运行的最大时间值(秒),默认30秒 
   max_input_time = 600 ;    每个PHP页面接收数据所需的最大时间,默认60 
   memory_limit = 128M ;    每个PHP页面所吃掉的最大内存,默认8M

Opcode-Cache

Wir wissen, dass der Ausführungsprozess von PHP in der folgenden Abbildung dargestellt werden kann:

Zuerst wird der PHP-Code in Tokens analysiert, dann in Opcode-Code kompiliert und schließlich wird der Opcode-Code ausgeführt und das Ergebnis zurückgegeben. Daher kann der Opcode-Code für dieselbe PHP-Datei beim ersten Mal zwischengespeichert werden Ausführen, und der Opcode-Code kann beim nächsten Mal ausgeführt werden. Beim Anzeigen der Seite wird der Opcode-Code direkt im Cache gefunden und der letzte Schritt direkt ausgeführt, ohne dass Zwischenschritte erforderlich sind.

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:

php ermittelt, ob die erforderlichen Parameter in der Funktion vorhanden sind

PHP (Iteration + Rekursion) Detaillierte Erklärung zum Erreichen einer unbegrenzten Klassifizierung

PHP unterstützt das Herunterladen chinesischer Dateien

Das obige ist der detaillierte Inhalt vonNeun Methoden des PHP-Caching. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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