So arbeiten Sie mit Redis Cache in .NET

Caching ist eine Statusverwaltungsstrategie, mit der Sie die Leistung Ihrer Anwendungen verbessern können, um den Ressourcenverbrauch in Ihrem System zu senken.

Redis Cache ist eine Open Source-Hochgeschwindigkeits-NoSQL-Datenbank. Es ist schnell und läuft vollständig im Speicher mit vernachlässigbarem Leistungsaufwand beim Lesen und Schreiben von Daten. Es ist zu beachten, dass Redis unter der BSD-Lizenz sowohl für den kommerziellen als auch für den nichtkommerziellen Gebrauch kostenlos ist.

Was ist Redis Cache und warum sollte ich ihn verwenden?

Redis ist einer der beliebtesten No-SQL-Open-Source-Datenspeicher auf Speicherbasis. Es handelt sich um einen speicherinternen Datenspeicher, der eine Vielzahl von Datenstrukturen unterstützen kann, z. B. Zeichenfolgen, Hashes, Sätze, Listen usw. Redis bietet außerdem integrierte Unterstützung für Replikation und Transaktionen sowie hervorragende Unterstützung für die Datenpersistenz.

Redis ist vor allem dann eine gute Wahl, wenn Ihre Anwendung eine große Datenmenge speichern und abrufen muss. Wenn Ihre Anwendung viele Daten speichern und abrufen muss und die Verfügbarkeit von freiem Speicher keine Einschränkung darstellt, ist Redis Cache die Caching-Engine, für die Sie sich entscheiden sollten. Das Einrichten von Redis ist recht einfach. In den folgenden Abschnitten wird erläutert, wie Sie Redis installieren, konfigurieren und verwenden.

Redis installieren

Sie können eine Kopie von Redis Cache von GitHub herunterladen. Während der Installation von Redis sollten Sie die Option zum Hinzufügen von Redis zur Umgebungsvariablen PATH aktivieren. Sobald der Redis-Cache auf Ihrem System installiert ist, können Sie Ausführen -> service.msc eingeben, um den auf Ihrem System ausgeführten Redis-Dienst anzuzeigen.

Arbeiten mit dem C # Redis-Client

Nachdem Redis auf Ihrem System installiert wurde, benötigen Sie einen Client zum Speichern und Abrufen von Daten zum und vom Redis-Cache. In diesem Beispiel verwenden wir den Open Source-Client ServiceStack C # Redis. Erstellen Sie dazu in Visual Studio ein neues Konsolenanwendungsprojekt. Sie können ServiceStack.Redis über den NuGet-Paketmanager installieren.

Unter der Annahme, dass ServiceStack.Redis über NuGet installiert wurde, veranschaulichen die folgenden beiden Methoden, wie Sie Daten mithilfe der ServiceStack.Redis-API speichern und aus dem Redis-Cache abrufen können.

private static bool Save (String-Host, String-Schlüssel, String-Wert)

        {

            bool isSuccess = false;

            using (RedisClient redisClient = neuer RedisClient (Host))

            {

                if (redisClient.Get (key) == null)

                {

                    isSuccess = redisClient.Set (Schlüssel, Wert);

                }}

            }}

            return isSuccess;

        }}

        private statische Zeichenfolge Get (Zeichenfolgenhost, Zeichenfolgenschlüssel)

        {

            using (RedisClient redisClient = neuer RedisClient (Host))

            {

                return redisClient.Get (Schlüssel);

            }}

        }}

Beachten Sie, wie die Set- und Get-Methoden der RedisClient-Klasse zum Speichern und Abrufen von Daten zum und vom Redis-Cache verwendet wurden. Ich überlasse es Ihnen, diese beiden Methoden zu aktualisieren, um sie generisch zu machen, damit sie mit jedem Typ funktionieren können.

So können Sie diese Methoden über die Main-Methode aufrufen:

statische Leere Main (string [] args)

        {

            string host = "localhost";

            string key = "";

            // Daten im Cache speichern

            bool success = Speichern (Host, Schlüssel, "Hallo Welt!");

            // Daten mit dem Schlüssel aus dem Cache abrufen

            Console.WriteLine ("Aus dem Redis-Cache abgerufene Daten:" + Get (Host, Schlüssel));

            Console.Read ();

        }}

Wie ich bereits sagte, ist Redis reich an Funktionen. In einem meiner zukünftigen Artikel werde ich einige fortgeschrittene Konzepte wie Persistenz, Pub-Sub, automatisches Failover usw. diskutieren. Sie können die RDB-Methode (eine einzelne kompakte Datei) oder die AOF-Persistenz nutzen. Sie müssen jedoch die Kompromisse zwischen Leistung, Haltbarkeit und Festplatten-E / A berücksichtigen, bevor Sie die richtige Persistenzoption auswählen.

Weitere Informationen zu Redis finden Sie in der Online-Dokumentation des Projekts.

Wenn Sie ein GUI-Admin-Tool zum Anzeigen Ihrer Redis-Daten verwenden möchten, können Sie das Redis Admin-UI-Tool ausprobieren.