CRUD‑Operationen

Diese beiden Code‑Beispiele zeigen grundlegende Memcached‑CRUD‑Operationen, numerisches Hochzählen und Anhängen von Werten. Zuerst gehen wir auf die zentralen APIs und Ausführungslogik ein:

Set / Replace / Add

static void Main(string[] args)
{
    MemcachedClient uniqueInstance = new MemcachedClient();

    // 1. StoreMode.Set: Neuanlage bei fehlendem Key, Überschreiben bei vorhandenem Key
    uniqueInstance.Store(StoreMode.Set, "site", "foxdevelop.com");
    Console.WriteLine(uniqueInstance.Get<string>("site")); 
    // Ausgabe: foxdevelop.com

    // 2. StoreMode.Replace: Aktualisiert nur, wenn der Key **vorhanden** ist; keine Aktion bei fehlendem Key
    uniqueInstance.Store(StoreMode.Replace, "site", "foxdevelop.com2");
    Console.WriteLine(uniqueInstance.Get<string>("site")); 
    // Ausgabe: foxdevelop.com2

    // 3. StoreMode.Add: Legt nur neu an, wenn der Key **nicht existiert**, Änderung wird übersprungen bei vorhandenem Key
    uniqueInstance.Store(StoreMode.Add, "site", "www.google.com");
    Console.WriteLine(uniqueInstance.Get<string>("site")); 
    // Key site ist vorhanden, keine Wirkung, Ausgabe bleibt: www.baidu.com

    // 4. Erneuter Set‑Aufruf zum Überschreiben des alten Werts
    uniqueInstance.Store(StoreMode.Set, "site", "www.microsoft.com");
    Console.WriteLine(uniqueInstance.Get<string>("site")); 
    // Ausgabe: www.microsoft.com

    // Append: Zeichenkette am Ende eines vorhandenen Werts anhängen
    // uniqueInstance.Append("site", "");

    // Increment: Numerischen Wert hochzählen
    uniqueInstance.Increment("count", 1, 2);

    Console.Read();
}Code-Sprache: JavaScript (javascript)

Vergleich der drei StoreMode‑Modi

ModusAusführungsregel
StoreMode.SetUniversell, überschreibt vorhandene Keys, erstellt fehlende Keys
StoreMode.AddNur Neuanlage, Schreibvorgang wird übersprungen, falls Key existiert
StoreMode.ReplaceNur Aktualisierung, Schreibvorgang wird übersprungen, falls Key fehlt

Remove‑Löschung und Increment‑Hochzählen

MemcachedClient uniqueInstance = new MemcachedClient();

uniqueInstance.Store(StoreMode.Set, "site", "foxdevelop.com");
Console.WriteLine(uniqueInstance.Get<string>("site"));
// Ausgabe: foxdevelop.com

// Remove: Angegebener Key löschen
uniqueInstance.Remove("site");
Console.WriteLine(uniqueInstance.Get<string>("site"));
// Key gelöscht, Get liefert keinen Wert, leere Zeichenkette

// Append auskommentiert
// uniqueInstance.Append("site",);

// Increment(Schlüssel, Schrittweite, Anfangswert)
uniqueInstance.Increment("count", 1, 2);
Console.WriteLine(uniqueInstance.Get<string>("count"));Code-Sprache: JavaScript (javascript)

Wichtige API‑Beschreibung

  1. Remove("key")
    Löscht den angegebenen Schlüssel aus dem Cache. Nach dem Löschen liefert Get<T> keine Daten und gibt den Standardwert zurück (leere Zeichenkette bei String‑Typ).
  2. Increment("count", 1, 2)
    Parameter‑Bedeutung:
  • Parameter 1: Schlüsselname count
  • Parameter 2: Hochzähl‑Schrittweite (jeweils +1)
  • Parameter 3: Anfangswert
  • Falls count nicht existiert → Schlüssel erzeugen, Anfangswert = 2
  • Falls count bereits existiert → +1 zum vorhandenen Zahlenwert addieren

Increment funktioniert nur mitzahlenförmigen Zeichenketten, nicht mit normalem Text wie Web‑Adressen.

  1. Append(key, data)
    Hängt Inhalt an dasEnde des zum Schlüssel gehörenden Wertsan; ohne Wirkung, wenn der Schlüssel nicht existiert.
    Zusätzlich gibt es Prepend zum Einfügen am Anfang des Werts.

CRUD‑Operationen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert