Verwenden Sie Memcached, um die Datenbanklast auf der WordPress-Website zu reduzieren

Veröffentlicht: 2018-11-30
Memcached für WordPress
Folgen Sie @Cloudways

Memcached ist einer der Caching-Mechanismen, die sich auf Ihrem Hosting-Server befinden. Es befasst sich hauptsächlich mit den Datenbankabfragen, die dazu beitragen, die Datenbanklast zu reduzieren, was zu einer schnell geladenen Webseite führt. Wenn Ihre Website/Ihr Geschäft stark auf Datenbankabfragen angewiesen ist, würde die Verwendung von Memcached für die WordPress-Website die Leistung erheblich verbessern und die Seitenladezeit reduzieren.

Die Internetgiganten wie YouTube, Reddit, Facebook, Twitter und Wikipedia verwenden Memcached, um die Ladezeit der Seite zu erhöhen. Google App Engine, Microsoft Azure, IBM Bluemix und Amazon Web Services bieten ebenfalls Memcached-Dienste über eine API an.

In Anbetracht seiner Bedeutung für die Erhöhung der Seitenladezeit bieten wir (Cloudways) vorinstalliertes Memcached auf unseren verwalteten WordPress-Hosting-Cloud-Servern an. Manchmal müssen Sie jedoch Ihre Anwendung (WordPress) konfigurieren, um die Vorteile von Memcached voll auszuschöpfen.

Inhaltsverzeichnis

  1. Was ist Memcached?
  2. Wofür wird Memcache verwendet?
  3. Wie funktioniert Memcached?
  4. Wie verwende ich Memcached?
  5. Memcached auf dem Server installieren
  6. Überprüfen Sie, ob Memcached ausgeführt wird
  7. Memcached für Cloudways-Benutzer
  8. WordPress Memcached-Plugin
  9. Abschließende Gedanken

Was ist Memcached?

Laut der offiziellen Memcached-Website ist Memcached ein:

„Kostenloses Open-Source-Hochleistungs-Caching-System für verteilte Speicherobjekte, generisch, aber zur Beschleunigung dynamischer Webanwendungen durch Verringerung der Datenbankbelastung gedacht.

Memcached ist ein In-Memory-Schlüsselwertspeicher für kleine Blöcke beliebiger Daten (Strings, Objekte) aus Ergebnissen von Datenbankaufrufen, API-Aufrufen oder Seitenrendering.“

Einfach ausgedrückt ist Memcached ein verteiltes temporäres Objekt-Caching-System, das Strings und Objekte im RAM des Servers speichert, die aus der Verarbeitung von Datenbankabfragen, API-Aufrufen oder Seitenrendering resultieren. Die für diesen Mechanismus verwendeten Server können als Memcached-Server bezeichnet werden.

Wofür wird Memcached verwendet?

Memcached wird verwendet, um dynamische Webanwendungen wie E-Commerce-Shops, Registrierungs- / Login-Websites usw. zu beschleunigen, indem die Datenbanklast reduziert wird. Es speichert das verarbeitete Ergebnis, sodass Memcached jedes Mal, wenn ein Besucher dieselbe Anfrage erneut anfordert, darauf antworten kann, anstatt die Anfrage zu verarbeiten und zu antworten. Indem Sie den Server weniger ausgelastet halten, erleben Ihre Besucher eine schnellere Ladezeit und eine bessere Benutzererfahrung.

Auf GitHub gibt es eine interessante und lustige Geschichte aus der realen Welt. Lesen Sie sie, um den typischen Anwendungsfall von Memcached zu verstehen.

Ist Ihr aktuelles WordPress-Hosting leistungsschwach?

Migrieren Sie zu Cloudways und maximieren Sie die Leistung Ihres WordPress.

Starte jetzt!

Wie funktioniert Memcached?

Jedes Mal, wenn ein Besucher/Browser den Server anfordert, der die Verarbeitung und Antwort der Datenbank erfordert, wird der Server belastet. Memcached reduziert diese Last, indem es Datenobjekte im temporären dynamischen Speicher speichert. Es speichert die Daten auf Schlüsselwerten und überprüft seinen Speicher, bevor es die Anfrage des Browsers an die Datenbank sendet. Wenn ein Cache vorhanden ist, antwortet er auf die Anfrage, ohne die Datenbank zur Verarbeitung einzubeziehen.

Wie oben besprochen, ist Memcached ein verteiltes Speicherobjekt-Caching-System, das aus vier Hauptkomponenten besteht:

  • Client-Software: Empfängt eine Liste der verteilten verfügbaren Memcached-Server.
  • Clientbasierter Hashing-Algorithmus: Wählt den Server basierend auf Schlüsselwerten aus.
  • Serversoftware: Speichert Daten (Werte) und Schlüssel in einer internen Hash-Tabelle.
  • Serveralgorithmen: Identifiziert, wann die alten Daten gelöscht und Speicher wiederverwendet werden sollen.

Die oben genannten Komponenten ermöglichen es Memcached, Daten zu speichern und abzurufen. Jeder Artikel besteht aus:

  • Taste
  • Ablaufzeit
  • Rohdaten

Wenn ein Element angefordert wird, überprüft Memcached seine Ablaufzeit, um zu sehen, ob das Element noch gültig ist, bevor auf die Anforderung geantwortet wird. Wenn kein Cache vorhanden ist, sendet er die Anfrage an die Datenbank, um das Ergebnis als Element zu verarbeiten und zu speichern.

Wenn ein Server nicht mehr genügend Arbeitsspeicher hat, sucht er nach den abgelaufenen Elementen und ersetzt sie. Wenn es noch Informationen benötigt, sucht es nach den Artikeln, die für einen bestimmten Zeitraum nicht angefordert wurden. Dadurch hält Memcached neuere angeforderte Informationen im dynamischen Speicher.

Auf hohem Niveau arbeiten Memcached wie folgt:

  1. Memcached prüft die angeforderten Daten, ob sie im Cache gespeichert sind.
  2. Zwei mögliche Ausgänge:
    – Daten werden im Cache gespeichert: Geben Sie die angeforderten Daten von Memcached zurück, ohne die Datenbank zu unterbrechen.
    – Daten werden nicht im Cache gespeichert: Führen Sie die angeforderte Abfrage aus, verarbeiten und rufen Sie die Daten ab und speichern Sie das Ergebnis im Speicher.
  3. Immer wenn ein Element aktualisiert wird oder ein Element abgelaufen ist, aktualisiert Memcached seinen Cache und stellt sicher, dass der neue Inhalt an den angeforderten Client geliefert wird.

Wie verwende ich Memcached?

Die Verwendung von Memcached umfasst zwei Schritte. Zuerst muss es auf Ihrem Hosting-Server installiert werden und dann sollte Ihre Anwendung in der Lage sein, Memcached zu unterstützen.

Der Installations- und Konfigurationsprozess wird im Folgenden beschrieben:

Memcached auf dem Server installieren

Memcached benötigt nicht viele CPU-Ressourcen. Es ist rein vom RAM abhängig. Wenn Sie einen Webserver mit 8 GB RAM haben, das Betriebssystem und Ihre Websites jedoch nur 4 GB verbrauchen, ist es eine gute Idee, den Rest des RAM Memcached-Instanzen zuzuweisen, um die Speicherkapazität zu erhöhen. Lesen Sie hier alle technischen Anforderungen .

Memcached funktioniert auf den meisten Linux-basierten Servern, die Installation von Memcached ist nur zwei Linux-Befehle entfernt. Im Allgemeinen sollten Sie Memcached von einem Paket installieren, das von Ihrem Betriebssystem bereitgestellt wird (Debian, Ubuntu usw.). Das Betriebssystem löst für Sie Abhängigkeiten und kümmert sich um Sicherheitsupdates.

Für Debian- oder Ubuntu-Benutzer:

Befehl: apt-get install memcached

Für Redhat/Fedora:

Befehl: yum install memcached

Weitere Informationen finden Sie in der Dokumentation Ihres jeweiligen Betriebssystems. Es ist erwähnenswert, dass Nginx, einer der beliebtesten Reverse-Proxy-Server, mit dem Memcached-Modul vorkonfektioniert ist, das die flexibelste Nginx Memcached-Bundle-Lösung bietet.

IdeaBox – Fallstudie

Lesen Sie, wie Cloudways einer WordPress-Agentur geholfen hat, bessere Produkte zu entwickeln.

Holen Sie sich jetzt eine Fallstudie!

Danke schön

Ihr E-Book ist auf dem Weg zu Ihrem Posteingang.

Überprüfen Sie, ob Memcached ausgeführt wird

Es gibt mehrere Möglichkeiten, um zu testen, ob Memcached ausgeführt wird. Einer von ihnen verwendet Telnet, melden Sie sich bei Ihrem Server-SSH-Terminal an und schreiben Sie den folgenden Befehl:

 telnet localhost 11211

oder

 Telnet 127.0.0.1 11211

PS: Der obige Befehl wird ausgeführt, wenn der lokale Server Ihr Memcached-Server ist.

Wenn der obige Befehl erfolgreich ausgeführt wird, erhalten Sie das folgende Ergebnis:

 Verbunden mit localhost.
Escape-Zeichen ist '^]'.

Andernfalls erhalten Sie einen Verbindungsfehler .

Um einige grundlegende Statistiken zu überprüfen, können Sie den folgenden Befehl verwenden: stats

Sie erhalten so etwas wie unten:

 STAT pid 313
STAT-Betriebszeit 2778636
STAT-Zeit 1535727399
STAT-Version 1.4.21
STAT libevent 2.0.21-stabil
STAT-Zeiger_Größe 64
STAT rusage_user 47.119322
STAT rusage_system 48.765342
STAT Strom_Verbindungen 1
STAT total_connections 151198
STAT-Verbindungsstrukturen 3
STAT reserviert_fds 20
STAT cmd_get 46
STAT cmd_set 4
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 30
STAT get_misses 16
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 22942
STAT bytes_geschrieben 3433252
STAT limit_maxbytes 268435456
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT-Gewinde 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT malloc_fails 0
STAT-Bytes 106
STAT curr_items 1
STAT total_items 4
STAT abgelaufen_unfetched 0
STAT evicted_unfetched 0
STAT-Räumungen 0
STAT zurückgefordert 0
STAT crawler_reclaimed 0
STAT lrutail_reflocked 0

Um die Elemente zu überprüfen, verwenden Sie: stats items

Ergebnis:

 STAT-Artikel: 2: Nummer 1
STAT-Artikel: 2: Alter 2486
STAT-Elemente:2: vertrieben 0
STAT-Elemente:2:evicted_nonzero 0
STAT-Elemente:2:evicted_time 0
STAT-Elemente:2:outofmemory 0
STAT-Artikel: 2: Schwanzreparaturen 0
STAT-Artikel:2:zurückgefordert 0
STAT-Elemente:2:expired_unfetched 0
STAT-Elemente:2:evicted_unfetched 0
STAT-Elemente:2:crawler_reclaimed 0
STAT-Elemente:2:lrutail_reflocked 0

Um die aktuellen Speicherstatistiken zu überprüfen, schreiben Sie: stats slabs

Ergebnis:

 STAT 2: Chunk_size 120
STAT 2: Chunks_per_page 8738
STAT 2:total_pages 1
STAT 2:total_chunks 8738
STAT 2:used_chunks 1
STAT 2:free_chunks 8737
STAT 2:free_chunks_end 0
STAT 2:mem_requested 106
STAT 2:get_hits 30
STAT 2:cmd_set 4
STAT 2:delete_hits 0
STAT 2: incr_hits 0
STAT 2:decr_hits 0
STAT 2:cas_hits 0
STAT 2:cas_badval 0
STAT 2: touch_hits 0
STAT active_slabs 1
STAT total_malloced 1048560

Um die Verbindung zu beenden, geben Sie quit ein und drücken Sie die Eingabetaste .

Es gibt eine Liste mit einigen nützlichen Befehlen zum Ausführen und Überprüfen von Memcached-Servern.

Memcached-Tutorial für andere Plattformen:

  • So richten Sie Memcached im Magento Store ein
  • So richten Sie Memcached auf PHP ein
  • So richten Sie Memcached auf Joomla . ein
  • So richten Sie Memcached mit Yii 2 ein
  • So richten Sie PrestaShop mit Memcached ein
  • So richten Sie Memcache auf Ihrer Drupal 7-Site ein

Memcached für Cloudways-Benutzer

Cloudways-Benutzer müssen sich nicht um alle technischen Details im Zusammenhang mit WordPress Memcached kümmern. Alle Server, die auf der Cloudways-Plattform gestartet wurden, wurden vorinstalliert und Memcached aktiviert.

Navigieren Sie zu Ihrem jeweiligen Server → Manage Services und Sie können sehen, dass Memcached standardmäßig vorinstalliert und aktiviert ist.

Memcached WordPress

Sie sind kein Cloudways-Kunde, möchten aber Memcached nutzen? Holen Sie sich eine KOSTENLOSE Testversion, ohne Ihre Kreditkartendaten anzugeben.

WordPress Memcached-Plugin

Es gibt viele WordPress-Cache-Plugins auf dem Markt. Die meisten von ihnen unterstützen Memcached wie W3TC, eines der am häufigsten verwendeten Cache-Plugins, mit dem Sie Memcached konfigurieren können. Wenn Sie einer der W3TC-Benutzer sind, navigieren Sie zur Registerkarte Allgemeine Einstellungen und wählen Sie Memcached aus der Dropdown-Liste aus, wo es heißt:

  • Seiten-Cache
  • Cache minimieren
  • Datenbank-Cache

W3TC WordPress Memcached

Speichern Sie alle Einstellungen und vergessen Sie nicht, den Cache einmal zu leeren.

Abschließende Gedanken

Memcached gilt als eine der Möglichkeiten, eine WordPress-Site zu beschleunigen, wenn sie richtig konfiguriert ist, da es die Datenbanklast reduziert und den Server weniger beschäftigt hält, was zu einer besseren Leistung und Seitenladezeit führt.