Heim  >  Artikel  >  Datenbank  >  In welcher Sprache ist der Redis-Quellcode?

In welcher Sprache ist der Redis-Quellcode?

(*-*)浩
(*-*)浩Original
2019-11-21 13:56:525254Durchsuche

In welcher Sprache ist der Redis-Quellcode?

Der Redis-Quellcode ist in ANSI C-Sprache. Zunächst sollten Sie natürlich mit dem Lesen der Hauptfunktion beginnen. Beim Lesen sollten wir jedoch einen Hauptthread verstehen, nämlich wie der Code Schritt für Schritt ausgeführt wird, wenn wir einen Befehl in Redis eingeben. (Empfohlenes Lernen: Redis-Video-Tutorial)

Auf diese Weise können wir zunächst von außen beobachten und versuchen, einige Befehle auszuführen, nachdem wir die externe Leistung dieser Befehlsausführungen verstanden haben , können wir dann einen Drilldown durchführen und sehen, wie der entsprechende Quellcode implementiert ist. Um diese Codes zu verstehen, müssen wir zunächst den Ereignismechanismus von Redis verstehen.

Sobald wir außerdem den Mechanismus der Ereignisschleife von Redis verstanden haben, werden wir auch eine interessante Frage verstehen: Warum kann Redis in einem einzelnen Thread ausgeführt werden, aber mehrere Anfragen gleichzeitig verarbeiten? (Genau genommen läuft Redis natürlich nicht mit nur einem Thread, sondern neben dem Hauptthread spielen die anderen Threads von Redis nur eine Hilfsrolle. Dabei handelt es sich um Threads, die im Hintergrund ausgeführt werden, um asynchrone zeitaufwändige Aufgaben zu erledigen )

Ausgehend von der Hauptfunktion können wir tatsächlich dem Codeausführungspfad folgen. Beschränken wir den Umfang.

Beginnen Sie mit der Hauptfunktion, folgen Sie dieser Schritt für Schritt und gelangen Sie schließlich zum Ausführungseingang eines beliebigen Redis-Befehls. Alternativ können Sie den Rest der Erkundung auch auf eigene Faust durchführen.

Überblick über den Initialisierungsprozess und die Ereignisschleife

Die Hauptfunktion des Redis-Quellcodes liegt in der Quelldatei server.c. Die Logik nach Beginn der Ausführung der Hauptfunktion kann in zwei Phasen unterteilt werden:

verschiedene Initialisierungen (einschließlich der Initialisierung der Ereignisschleife);

Ausführung der Ereignisschleife .

Diese beiden Ausführungsphasen können durch das folgende Flussdiagramm ausgedrückt werden (klicken Sie, um das Bild zu vergrößern)

In welcher Sprache ist der Redis-Quellcode?

Das obige ist der detaillierte Inhalt vonIn welcher Sprache ist der Redis-Quellcode?. 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