W poprzednim artykule o technologiach buforowania omówiłem, jak zintegrować Redis z Yii2 jako pamięć podręczną i obsługę sesji. W tym blogu pokażę, jak używać Memcached z Yii2.
Memcached to darmowy i otwarty system buforowania pamięci rozproszonej. Służy głównie do przyspieszania dynamicznych witryn internetowych opartych na bazach danych poprzez buforowanie danych w celu skrócenia czasu wykonywania i dostępu. Cloudways jest fabrycznie zainstalowany i aktywowany Memcached na serwerach użytkowników i użyję go w tym samouczku.
Yii2 dostarcza własną klasę Memcache, która działa zarówno z Memcache, jak i Memcached. Zacznijmy od tych zajęć.
Powiązane: Jak hostować platformę Yii 2 na Cloudways za pomocą Composera
Dodawanie klasy Memcache w Yii2
Przejdź do konfiguracji w głównym folderze Yii2 i otwórz web.php. W sekcji komponenty dodaj tę linię:
'cache' => [ 'class' => 'yii\caching\MemCache', 'useMemcached' => true, ],
Ustawiając useMemcached jako prawdziwe, Yii2 będzie wiedział, że używam Yii2 Memcached.
Korzystanie z Memcached w Yii2
Ponieważ dodałem już klasę Yii2 Memcache, czas dodać i zapisać trochę danych w Memcached. Przejdź do kontrolerów w Yii2, utwórz w nim nowy plik i nazwij go MemController.php. Wklej w nim następujący kod.
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; } }
Po zapisaniu pliku uruchom przeglądarkę i wskaż indeks tego kontrolera, dodając ?r=mem/index . Wynik byłby następujący:
Teraz dane są zapisywane w Memcached.
Odśwież stronę jeszcze raz, aby upewnić się, że dane pochodzą z Memcached, a nie z innych źródeł.
Zweryfikujmy teraz dane i sprawdźmy, czy Memcached jest używany.
Przygotuj się na aktualizację podstawowych wskaźników internetowych
Ebook, aby przyspieszyć działanie witryny, zanim zaczniesz tracić ruch.
Dziękuję
Twoja lista jest w drodze do Twojej skrzynki odbiorczej.
Weryfikacja danych w Memcached
Istnieją dwa sposoby sprawdzenia, czy dane są zapisywane w Memcached
1. Korzystanie z konsoli:
Otwórz konsolę i wpisz następujące polecenie, aby nawiązać połączenie z serwerem Memcached:
Telnet localhost 11211
Po nawiązaniu połączenia pojawi się następujący ekran:
Teraz jesteśmy połączeni z serwerem Memcached. Wpisz następujące polecenie, aby sprawdzić, czy Twój klucz istnieje.
pobierz pamięć
Jeśli zobaczysz następujący ekran, oznacza to, że Twoja wartość została pomyślnie dodana do MemCached.
Następnie sprawdź hity na Memcached. Wpisz następujące polecenie:
statystyki
Teraz poszukaj zmiennej get_hits . Znajdziesz liczbę trafień otrzymanych przez Memcached i zwrócone dane.
2. Na panelu Cloudways
W Cloudways możesz łatwo sprawdzić wskaźnik trafień Memcached, przechodząc do serwera, a następnie wybierając Monitorowanie na pasku bocznym.
W oknie monitorowania wybierz Serwer i z listy rozwijanej wybierz Memcached Hit Rate. Otworzy się wykres trafień otrzymanych przez MemCached.
Jeśli nie możesz zobaczyć wskaźnika trafień, spróbuj odświeżyć go, klikając przycisk Odśwież przycisk.
Ostateczne myśli
W tym samouczku omówiłem, jak używać Memcached z Yii2 jako domyślnej pamięci podręcznej dla Twojej witryny. Jeśli masz pytanie lub chcesz wziąć udział w dyskusji, zostaw komentarz poniżej.