Memcached - Inkrement-Dekrement-Daten
Memcached incr und decrBefehle werden verwendet, um den numerischen Wert eines vorhandenen Schlüssels zu erhöhen oder zu verringern. Wird der Schlüssel nicht gefunden, wird er zurückgegebenNOT_FOUND. Wenn der Schlüssel nicht numerisch ist, wird er zurückgegebenCLIENT_ERROR cannot increment or decrement non-numeric value. Andernfalls,ERROR ist zurück gekommen.
Syntax - Inkr
Die grundlegende Syntax von Memcached incr Befehl ist wie unten gezeigt -
incr key increment_value
Beispiel
In diesem Beispiel verwenden wir Besucher als Schlüssel und setzen zunächst 10 ein. Danach erhöhen wir die Besucher um 5.
set visitors 0 900 2
10
STORED
get visitors
VALUE visitors 0 2
10
END
incr visitors 5
15
get visitors
VALUE visitors 0 2
15
END
Syntax - decr
Die grundlegende Syntax von Memcached decr Befehl ist wie unten gezeigt
decr key decrement_value
Beispiel
set visitors 0 900 2
10
STORED
get visitors
VALUE visitors 0 2
10
END
decr visitors 5
5
get visitors
VALUE visitors 0 1
5
END
Incr / Decr mit Java-Anwendung
Um Daten auf einem Memcached-Server zu erhöhen oder zu verringern, müssen Sie Memcached verwenden incr or decr Methoden jeweils.
Beispiel
import net.spy.memcached.MemcachedClient;
public class MemcachedJava {
public static void main(String[] args) {
// Connecting to Memcached server on localhost
MemcachedClient mcc = new MemcachedClient(new
InetSocketAddress("127.0.0.1", 11211));
System.out.println("Connection to server sucessfully");
System.out.println("set status:"+mcc.set("count", 900, "5").isDone());
// Get value from cache
System.out.println("Get from Cache:"+mcc.get("count"));
// now increase the stored value
System.out.println("Increment value:"+mcc.incr("count", 2));
// now decrease the stored value
System.out.println("Decrement value:"+mcc.decr("count", 1));
// now get the final stored value
System.out.println("Get from Cache:"+mcc.get("count"));
}
}
Ausgabe
Beim Kompilieren und Ausführen des Programms wird die folgende Ausgabe angezeigt:
Connection to server successfully
set status:true
Get from Cache:5
Increment value:7
Decrement value:6
Get from Cache:6