Memcached ist ein leistungsstarkes verteiltes Speicherobjekt-Caching-System, das in dynamischen Webanwendungen verwendet wird, um die Datenbanklast zu reduzieren. Es verbessert die Geschwindigkeit dynamischer, datenbankgesteuerter Websites, indem es Daten und Objekte im Speicher zwischenspeichert, um die Anzahl der Datenbanklesevorgänge zu reduzieren. Memcached basiert auf einer Hashmap, die Schlüssel/Wert-Paare speichert. Sein Daemon ist in C geschrieben, aber der Client kann in jeder beliebigen Sprache geschrieben sein und kommuniziert mit dem Daemon über das Memcached-Protokoll.
Memcached ist ein leistungsstarkes verteiltes Speicherobjekt-Caching-System für dynamische Webanwendungen zur Reduzierung der Datenbanklast. Es erhöht die Geschwindigkeit dynamischer, datenbankgesteuerter Websites, indem Daten und Objekte im Speicher zwischengespeichert werden, um die Anzahl der Datenbanklesevorgänge zu reduzieren. Wir haben das „Boolean Education Yan 18 Memcached Video Tutorial“ zusammengestellt, in der Hoffnung, allen dabei zu helfen, verteilte Memcached-Cluster besser zu erlernen.
Video-Wiedergabeadresse: http://www.php.cn/course/314.html
1 Einstellungen
1) Starten Sie die Serverseite von Memcache
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached. Die Option pid
-d dient zum Starten eines Daemon-Prozesses,
-m ist die Menge an Speicher, die Memcache zugewiesen ist, in MB, hier sind es 10 MB,
-u ist der Benutzer, der Memcache ausführt , ich bin hier root,
-l ist die IP-Adresse des lauschenden Servers, wenn es mehrere Adressen gibt, gebe ich die IP-Adresse des Servers 192.168.0.200 an,
-p ist der Port zum Einrichten von Memcache Überwachung, hier stelle ich 12000 ein, vorzugsweise einen Port über 1024,
-c-Option ist die maximale Anzahl gleichzeitiger Verbindungen, der Standardwert ist 1024, ich stelle hier 256 ein, stelle es entsprechend der Auslastung deines Servers ein,
- P ist die PID-Datei, die zum Speichern von Memcache festgelegt ist. Ich speichere sie hier in /tmp/memcached.pid,
2) Wenn Sie den Memcache-Prozess beenden möchten, führen Sie Folgendes aus:
# kill `cat /tmp/ memcached.pid`
Der Hash-Algorithmus bildet einen Binärwert beliebiger Länge in einen kleineren Binärwert fester Länge ab. Dieser kleine Binärwert wird Hash-Wert genannt. Ein Hashwert ist eine eindeutige und äußerst kompakte numerische Darstellung eines Datenelements. Wenn Sie ein Stück Klartext hashen und auch nur einen Buchstaben des Absatzes
ändern, erzeugen nachfolgende Hashes unterschiedliche Werte. Es ist rechnerisch unmöglich, zwei verschiedene Eingaben zu finden, die denselben Hashwert ergeben.
2. Der Zweck des konsistenten Hash-Algorithmus ist zweierlei: Erstens sind andere Knoten so wenig wie möglich betroffen; zweitens ist die Datenumverteilung so ausgeglichen wie möglich.
3. Warum memcached ausführen?
Wenn die Website viel Verkehr hat und die meisten Besuche eine hohe Belastung der Datenbank verursachen, kann die Verwendung von Memcached den Druck auf die Datenbank verringern.
4. Für welche Geschäftsszenarien ist Memcached geeignet?
1) Wenn die Website dynamische Webseiten mit hohem Datenverkehr enthält, ist die Belastung der Datenbank sehr hoch. Da es sich bei den meisten Datenbankanfragen um Lesevorgänge handelt, kann Memcached die Datenbanklast erheblich reduzieren.
2) Wenn die Auslastung des Datenbankservers relativ gering, aber die CPU-Auslastung hoch ist, können die berechneten Ergebnisse (berechnete Objekte) und gerenderte Webseitenvorlagen (gerenderte Vorlagen) zwischengespeichert werden.
3) Memcached kann zum Zwischenspeichern von Sitzungsdaten und temporären Daten verwendet werden, um die Datenbankschreibvorgänge für sie zu reduzieren.
4) Zwischenspeichern Sie einige kleine, aber häufig aufgerufene Dateien.
5) Zwischenspeichern der Ergebnisse von Web-„Diensten“ (keine von IBM geförderten Web-Dienste, Anmerkung des Übersetzers) oder RSS-Feeds.
5. Geschäftsszenarien, in denen Memcached nicht anwendbar ist?
1) Die Größe des Cache-Objekts ist größer als 1 MB
Memcached selbst ist nicht für die Verarbeitung großer Multimedia-Inhalte (große Medien) und großer Binärblöcke (Streaming großer Blobs) ausgelegt.
2) Die Länge des Schlüssels beträgt mehr als 250 Zeichen
3) Der virtuelle Host lässt die Ausführung des zwischengespeicherten Dienstes nicht zu
Wenn die Anwendung selbst auf gehostet wird Auf einem virtuellen privaten Server der unteren Preisklasse wie VMware sind Virtualisierungstechnologien wie XEN nicht für die Ausführung von Memcached geeignet. Memcached muss große Speicherblöcke übernehmen und steuern. Wenn der von Memcached verwaltete Speicher vom Betriebssystem oder Hypervisor ausgelagert wird, wird die Leistung von Memcached stark beeinträchtigt.
4) Die Anwendung läuft in einer unsicheren Umgebung
Memcached kann jede Sicherheitsrichtlinie bereitstellen und Sie können nur über Telnet auf Memcached zugreifen. Wenn die Anwendung auf einem gemeinsam genutzten System ausgeführt wird, müssen Sicherheitsaspekte berücksichtigt werden.
5) Das Unternehmen selbst benötigt persistente Daten oder eine Datenbank
6. Können alle Elemente im Memcached durchlaufen werden?
Nein, dieser Vorgang ist relativ langsam und blockiert andere Vorgänge (die Langsamkeit hier wird mit anderen zwischengespeicherten Befehlen verglichen). Alle Nicht-Debug-Befehle von Memcached, wie Add, Set, Get, Fulsh usw., unabhängig davon, wie viele Daten in
Memcached gespeichert sind, ihre Ausführung nimmt nur konstante Zeit in Anspruch. Die Zeit, die zum Ausführen eines Befehls benötigt wird, der alle Elemente durchläuft, nimmt mit zunehmender Datenmenge im Memcached zu. Wenn andere Befehle warten (alle durchlaufen
Der Befehl mit dem Element wurde ausgeführt, kann aber nicht ausgeführt werden, daher kommt es zu einer Blockierung.
Das obige ist der detaillierte Inhalt vonBoolean Education Yan 18 Memcached-Videodatenfreigabe. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

In der Datenbankoptimierung sollten Indexierungsstrategien gemäß Abfrageanforderungen ausgewählt werden: 1. Wenn die Abfrage mehrere Spalten beinhaltet und die Reihenfolge der Bedingungen festgelegt ist, verwenden Sie zusammengesetzte Indizes. 2. Wenn die Abfrage mehrere Spalten beinhaltet, aber die Reihenfolge der Bedingungen nicht festgelegt ist, verwenden Sie mehrere einspaltige Indizes. Zusammengesetzte Indizes eignen sich zur Optimierung von Multi-Säulen-Abfragen, während Einspaltindizes für Einspalten-Abfragen geeignet sind.

Um die MySQL -Abfrage zu optimieren, müssen SlowQuerylog und Performance_Schema verwendet werden: 1. Aktivieren Sie SlowQuerylog und setzen Sie Schwellenwerte, um langsame Abfragen aufzuzeichnen; 2. Verwenden Sie Performance_Schema, um die Details zur Ausführung von Abfragen zu analysieren, Leistungs Engpässe zu finden und zu optimieren.

MySQL und SQL sind wesentliche Fähigkeiten für Entwickler. 1.MYSQL ist ein Open -Source -Relational Database Management -System, und SQL ist die Standardsprache, die zum Verwalten und Betrieb von Datenbanken verwendet wird. 2.MYSQL unterstützt mehrere Speichermotoren durch effiziente Datenspeicher- und Abruffunktionen, und SQL vervollständigt komplexe Datenoperationen durch einfache Aussagen. 3. Beispiele für die Nutzung sind grundlegende Abfragen und fortgeschrittene Abfragen wie Filterung und Sortierung nach Zustand. 4. Häufige Fehler umfassen Syntaxfehler und Leistungsprobleme, die durch Überprüfung von SQL -Anweisungen und Verwendung von Erklärungsbefehlen optimiert werden können. 5. Leistungsoptimierungstechniken umfassen die Verwendung von Indizes, die Vermeidung vollständiger Tabellenscanning, Optimierung von Join -Operationen und Verbesserung der Code -Lesbarkeit.

MySQL Asynchronous Master-Slave-Replikation ermöglicht die Datensynchronisation durch Binlog, die die Leseleistung und die hohe Verfügbarkeit verbessert. 1) Der Master -Server -Datensatz ändert sich am Binlog; 2) Der Slave -Server liest Binlog über E/A -Threads; 3) Der Server -SQL -Thread wendet BinLog an, um Daten zu synchronisieren.

MySQL ist ein Open Source Relational Database Management System. 1) Datenbank und Tabellen erstellen: Verwenden Sie die Befehle erstellte und creatEtable. 2) Grundlegende Vorgänge: Einfügen, aktualisieren, löschen und auswählen. 3) Fortgeschrittene Operationen: Join-, Unterabfrage- und Transaktionsverarbeitung. 4) Debugging -Fähigkeiten: Syntax, Datentyp und Berechtigungen überprüfen. 5) Optimierungsvorschläge: Verwenden Sie Indizes, vermeiden Sie ausgewählt* und verwenden Sie Transaktionen.

Die Installation und die grundlegenden Vorgänge von MySQL umfassen: 1. MySQL herunterladen und installieren, das Stammbenutzerkennwort festlegen. 2. Verwenden Sie SQL -Befehle, um Datenbanken und Tabellen zu erstellen, wie z. 3. Ausführen von CRUD -Operationen, verwenden Sie Einfügen, auswählen, aktualisieren, Befehle löschen; 4. Erstellen Sie Indizes und gespeicherte Verfahren, um die Leistung zu optimieren und komplexe Logik zu implementieren. Mit diesen Schritten können Sie MySQL -Datenbanken von Grund auf neu erstellen und verwalten.

InnoDbbufferpool verbessert die Leistung von MySQL -Datenbanken durch das Laden von Daten und Indexseiten in den Speicher. 1) Die Datenseite wird in das Bufferpool geladen, um die Festplatten -E/A zu reduzieren. 2) Schmutzige Seiten sind regelmäßig markiert und auf der Festplatte aktualisiert. 3) LRU -Algorithmusverwaltungsdatenseite Eliminierung. 4) Der Lese-Out-Mechanismus lädt die möglichen Datenseiten im Voraus.

MySQL ist für Anfänger geeignet, da es einfach zu installieren, leistungsfähig und einfach zu verwalten ist. 1. Einfache Installation und Konfiguration, geeignet für eine Vielzahl von Betriebssystemen. 2. Unterstützung grundlegender Vorgänge wie Erstellen von Datenbanken und Tabellen, Einfügen, Abfragen, Aktualisieren und Löschen von Daten. 3. Bereitstellung fortgeschrittener Funktionen wie Join Operations und Unterabfragen. 4. Die Leistung kann durch Indexierung, Abfrageoptimierung und Tabellenpartitionierung verbessert werden. 5. Backup-, Wiederherstellungs- und Sicherheitsmaßnahmen unterstützen, um die Datensicherheit und -konsistenz zu gewährleisten.


Heiße KI -Werkzeuge

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

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

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

ZendStudio 13.5.1 Mac
Leistungsstarke integrierte PHP-Entwicklungsumgebung

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.