Im vorherigen Artikel über Caching-Technologien habe ich besprochen, wie man Redis als Cache- und Sitzungs-Handler in Yii2 integriert. In diesem Blog werde ich demonstrieren, wie man Memcached mit Yii2 verwendet.
Memcached ist ein kostenloses und quelloffenes verteiltes Speicher-Caching-System. Es wird hauptsächlich verwendet, um dynamische datenbankgesteuerte Websites zu beschleunigen, indem Daten zwischengespeichert werden, um die Ausführungs- und Zugriffszeiten zu verkürzen. Cloudways ist auf den Servern der Benutzer vorinstalliert und aktiviert, und ich werde es in diesem Tutorial verwenden.
Yii2 bietet eine eigene Memcache-Klasse, die sowohl mit Memcache als auch mit Memcached funktioniert. Beginnen wir mit diesem Kurs.
Verwandt: How To Host Yii 2 Framework On Cloudways Using Composer
Hinzufügen der Memcache-Klasse in Yii2
Gehen Sie zur Konfiguration Ordner im Hauptordner von Yii2 und öffnen Sie web.php. Unter Komponenten füge diese Zeile hinzu:
'cache' => [ 'class' => 'yii\caching\MemCache', 'useMemcached' => true, ],
Durch Setzen von useMemcached als wahr, Yii2 wird wissen, dass ich Yii2 Memcached verwende.
Memcache in Yii2 verwenden
Da ich die Yii2 Memcache-Klasse bereits hinzugefügt habe, ist es an der Zeit, einige Daten in Memcached hinzuzufügen und zu speichern. Gehen Sie zu den Controllern Ordner in Yii2, erstellen Sie darin eine neue Datei und nennen Sie sie MemController.php. Fügen Sie den folgenden Code ein.
namespace app\controllers; use Yii; use yii\web\Controller; class MemController extends Controller { public function actionIndex() { $cache = Yii::$app->cache; $key = 'Mem'; $data = $cache->get($key); if ($data === false) { $key = 'Mem'; $data = 'My First Memcached Data'; $cache->set($key, $data); } echo $data; } }
Starten Sie nach dem Speichern der Datei den Browser und verweisen Sie ihn auf den Index dieses Controllers, indem Sie ?r=mem/index hinzufügen . Das Ergebnis wäre diese Zeile:
Jetzt werden die Daten in Memcached gespeichert.
Aktualisieren Sie die Seite noch einmal, damit sichergestellt werden kann, dass die Daten aus Memcached und nicht aus anderen Quellen stammen.
Lassen Sie uns nun die Daten verifizieren und prüfen, ob auf Memcached zugegriffen wird.
Machen Sie sich bereit für das Core Web Vitals-Update
E-Book, um Ihre Website zu beschleunigen, bevor Sie Traffic verlieren.
Danke
Ihre Liste ist auf dem Weg in Ihren Posteingang.
Verifizieren von Daten in Memcache
Es gibt zwei Möglichkeiten, um zu überprüfen, ob die Daten in Memcached gespeichert werden
1. Konsole verwenden:
Öffnen Sie Ihre Konsole und geben Sie den folgenden Befehl ein, um eine Verbindung zum Memcached-Server herzustellen:
telnet localhost 11211
Sobald Sie verbunden sind, erhalten Sie den folgenden Bildschirm:
Jetzt sind wir mit dem Memcached-Server verbunden. Geben Sie Folgendes ein, um zu prüfen, ob Ihr Schlüssel existiert.
Mem erhalten
Wenn Sie den folgenden Bildschirm sehen, wurde Ihr Wert erfolgreich in MemCached hinzugefügt.
Überprüfen Sie als Nächstes die Treffer auf Memcached. Geben Sie den folgenden Befehl ein:
Statistiken
Suchen Sie nun nach der Variable get_hits . Sie finden die Anzahl der Treffer, die Memcache erhalten hat, und die zurückgegebenen Daten.
2. Auf dem Cloudways-Panel
Auf Cloudways können Sie die Trefferquote von Memcached ganz einfach nachschlagen, indem Sie zum Server gehen und dann Überwachung in der Seitenleiste auswählen.
Wählen Sie im Überwachungsfenster den Server aus und wählen Sie in der Dropdown-Liste Memcache-Trefferrate. Es öffnet sich ein Diagramm der vom MemCached empfangenen Treffer.
Wenn Sie die Trefferquote nicht sehen können, versuchen Sie, sie zu aktualisieren, indem Sie auf Aktualisieren klicken Schaltfläche.
Abschließende Gedanken
In diesem Tutorial habe ich besprochen, wie Sie Memcached mit Yii2 als Standard-Cache für Ihre Site verwenden. Wenn Sie eine Frage haben oder zur Diskussion beitragen möchten, hinterlassen Sie bitte unten einen Kommentar.