In diesem Artikel wird hauptsächlich die Einführungs- und Nutzungsszenarien von Redis vorgestellt. Der Herausgeber findet es ziemlich gut. Ich werde es jetzt mit Ihnen teilen und Ihnen eine Referenz geben. Schauen wir uns mit dem Herausgeber an
(1) Nachteile der persistenten Datenbank
Die von uns normalerweise verwendeten relationalen Datenbanken umfassen MySQL, Oracle, SQLServer usw. Während des Entwicklungsprozesses werden die Daten normalerweise über den vom Web bereitgestellten Datenbanktreiber für Addition, Löschung, Änderung und Suche mit der Datenbank verknüpft.
Wo sind die Daten in der Datenbank, die wir jeden Tag verwenden, gespeichert? Nehmen wir MySQL als Beispiel.
Öffnen Sie den Datenordner im Ordnerverzeichnis, in dem sich unser MySQL befindet, wie folgt:
Wir können feststellen, dass es alle Datenbanken gibt, die wir erstellt haben. Öffnen Sie einen von ihnen und Sie können die von uns erstellten Tische sehen. Sie existieren in Form von Dateien (Format FRM und IBD):
Mit anderen Worten, alle Daten in den relationalen Daten, die wir im täglichen Leben verwenden, werden auf der Festplatte der Maschine gespeichert, die wir die Datenbank bereitstellen.
Im Allgemeinen ist nach Abschluss unserer Website -Entwicklung und der Les- und Schreib -Effizienz des Servers eine wichtige Voraussetzung für die Laufgeschwindigkeit der Website. Natürlich die Bandbreite des Servers usw., aber diese Dinge können durch Hardware -Updates und -Tufe gelöst werden. Was eng mit der Effizienz der Website verbunden ist, ist unsere Datenbank.
Die Geschwindigkeit der Datenverarbeitung in Datenbanken hängt eng mit der Geschwindigkeit der Website zusammen, während Datenabfrage, Datenverarbeitung usw. mit der Datenbankverarbeitungsgeschwindigkeit zusammenhängen. Um die Fähigkeit der Datenbank zu verbessern, Daten zu verarbeiten, ist eine der Lösungen die Optimierungstechnologie von SQL -Anweisungen. Die Verarbeitungseffizienz von SQL -Anweisungen ist relativ hoch, die Datenbankverarbeitungskapazität steigt und die Datenverarbeitungskapazität der Website wird ebenfalls schneller sein.
Wenn jedoch die Anzahl der Website -Verarbeitung und -besuche sehr groß ist, steigt der Druck auf unsere Datenbank. Der Datenbankverbindungspool und die Fähigkeit der Datenbank, gleichzeitig Daten zu verarbeiten, wird sehr in Frage gestellt. Sobald die Datenbank ihre maximale Fähigkeit trägt, wird die Datenverarbeitungseffizienz der Website stark reduziert. Zu diesem Zeitpunkt werden hohe Parallelitätsverarbeitung, Lastausgleich und verteilte Datenbanken verwendet, und diese Technologien kosten sowohl Arbeitskräften als auch Geld.
Wenn unsere Website keine sehr große Website ist, sondern die Effizienz der Website verbessern und die Anzahl der Lese- und Schreibzeiten der Datenbank verringern möchte, müssen wir Caching -Technologie einführen.
(2) Cache
Cache ist die Sicherung der im Speicher gespeicherten Daten. Wenn sich die Daten nicht im Wesentlichen geändert haben, erlauben wir nicht, dass Datenabfragen in der Datenbank betrieben werden, sondern Daten im Speicher abrufen. Dies reduziert die Anzahl der Lese- und Schreibzeiten der Datenbank erheblich, und die Geschwindigkeit des Lesedaten aus dem Speicher ist schneller als die Abfragung in Datenbanken, was auch die Effizienz verbessert.
Verwenden Sie Cache, um die Last in der Datenbank zu reduzieren:
Wenn eine Website entwickelt wird, wenn sich einige Daten nicht in kurzer Zeit ändern und häufig zugegriffen werden, werden die Daten auf ein Medium mit einer schnelleren Lesegeschwindigkeit (oder die Daten können über weniger Berechnungen erhalten werden). Dieses Verhalten wird als Cache der Daten bezeichnet. Die Medien können eine Datei/Datenbank/Speicher sein. Der Speicher wird häufig im Datenbank -Cache verwendet.
Zwei Formen von Cache:
Page -Cache wird häufig im Speicherverwaltungssystem für CMS (Content Management System) verwendet.
Datencache wird häufig in den spezifischen Daten der Seite verwendet.
Es gibt zwei Arten von Cache:
Page Caching (Smarty statische Technologie)
Datencache
(3) Redis -Einführung
Eine der Caching -Techniken, die wir lernen möchten, ist Redis:
Redis ist die Abkürzung von Remote Dictionary Server (Remote Data Service), einer von italienischen Antirez (Salvatore Sanfilippo) entwickelten Speicher -Cache -Datenbank. Die Software ist in C-Sprache geschrieben und ihr Datenmodell ist ein Schlüsselwert. Es unterstützt reichhaltige Datenstrukturen (Typen), wie z. B. String/List/Hash/Set/Sortierte Set.
Es kann bestehen bleiben (während des Laufens, Sicherungsdaten auf die Festplatte, um den Datenverlust aufgrund von Stromausfällen und anderen Situationen zu verhindern. Nachdem der Stromausfall wiederhergestellt wurde, stellt Redis die Daten in der Festplatte zum Speicher wieder her) und stellt die Sicherheit der Daten sicher.
4) Vergleich von Redis und Memcache
1.Redis unterstützt nicht nur einfache K/V -Typdaten, sondern bietet auch die Speicherung von Datenstrukturen wie List, Set, Zset und Hash.
2.Redis unterstützt die Anwendung der Master-Slave-Modus (Master-Slave).
3.Redis unterstützt die Datenpersistenz, die die Daten in Speicher auf der Festplatte aufbewahren und für den Neustart erneut geladen werden kann.
4. Die maximale Grenze für den Einzelwert für Redis beträgt 1 GB, und Memcached kann nur 1 MB Daten sparen.
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Referenzwert für das Studium oder die Arbeit eines jeden hat. Wenn Sie Fragen haben, können Sie eine Nachricht zur Kommunikation überlassen. Vielen Dank für Ihre Unterstützung bei Wulin.com.