Memcached - Incrementa decrementa dati

Memcached incr e decri comandi vengono utilizzati per aumentare o diminuire il valore numerico di una chiave esistente. Se la chiave non viene trovata, viene restituitaNOT_FOUND. Se la chiave non è numerica, ritornaCLIENT_ERROR cannot increment or decrement non-numeric value. Altrimenti,ERROR viene restituito.

Sintassi - incr

La sintassi di base di Memcached incr il comando è come mostrato di seguito -

incr key increment_value

Esempio

In questo esempio, usiamo i visitatori come chiave e impostiamo 10 inizialmente in essa, quindi incrementiamo i visitatori di 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

Sintassi - decr

La sintassi di base di Memcached decr il comando è come mostrato di seguito

decr key decrement_value

Esempio

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 utilizzando l'applicazione Java

Per aumentare o diminuire i dati in un server Memcached, è necessario utilizzare Memcached incr or decr metodi rispettivamente.

Esempio

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"));
   }
}

Produzione

Durante la compilazione e l'esecuzione del programma, puoi vedere il seguente output:

Connection to server successfully
set status:true
Get from Cache:5
Increment value:7
Decrement value:6
Get from Cache:6