Heim  >  Artikel  >  Datenbank  >  Warum ist Redis so schnell?

Warum ist Redis so schnell?

藏色散人
藏色散人Original
2019-06-10 10:52:432743Durchsuche

Redis ist eine in ANSI C geschriebene K-K-Speicherdatenbank mit hervorragender Leistung, Netzwerkunterstützung und Persistenz und bietet APIs in mehreren Sprachen. Die am häufigsten verwendeten Typen sind hauptsächlich String, List, Hash, Set und ZSet.

Warum ist Redis so schnell?

Warum ist Redis so schnell?

1. Die meisten Anfragen basieren vollständig auf dem Speicher und sind reine Speicheroperationen, die sehr schnell sind. Die Daten werden im Speicher gespeichert, ähnlich wie bei HashMap. Der Vorteil von HashMap besteht darin, dass die Zeitkomplexität von Suche und Betrieb O(1) ist Einfach. Die Datenstruktur in Redis ist speziell entwickelt. Es wird ein einzelner Thread verwendet, um unnötige Kontextwechsel und Konkurrenzbedingungen zu vermeiden CPU, und es besteht keine Notwendigkeit, verschiedene Sperren zu berücksichtigen, und es gibt keinen Leistungsverbrauch durch mögliche Deadlocks.

4 , nicht blockierendes IO;

5. Die zugrunde liegenden Modelle sind unterschiedlich, die zugrunde liegenden Implementierungsmethoden und die Anwendungsprotokolle für die Kommunikation mit dem Client sind unterschiedlich, da Redis den VM-Mechanismus direkt selbst erstellt Wenn Systemfunktionen aufgerufen werden, wird eine gewisse Zeit verschwendet.

Die interne Implementierung verwendet Epoll und verwendet Epoll +, ein einfaches, selbst implementiertes Ereignisframework. Lesen, Schreiben, Schließen und Verbinden in Epoll werden alle in Ereignisse umgewandelt und dann die Multiplexing-Funktion von Epoll verwendet, um keine Zeit mit io zu verschwenden.

Weitere technische Artikel zu Redis finden Sie in der Spalte

Tutorial zur Redis-Nutzung

!

Das obige ist der detaillierte Inhalt vonWarum ist Redis so schnell?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Was ist Redis?Nächster Artikel:Was ist Redis?