memcached的incr 和 decr命令用于增加现有键的数值递减。如果键未找到或如果关键的不是数字,则返回not_found。那么client_error不能增加或返回递减非数值错误。
memcached的incr命令的基本语法如下所示:
incr key increment_value
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
在上面的例子中,我们已经使用visitors为一个键,并设置10为初始值,之后为visitors增量5。
memcached的decr命令的基本语法如下所示:
decr key decrement_value
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
要在memcached服务器增加,减小数据,需要使用memcached的incr, decr方法。
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")); } }
当上述程序编译和运行,它提供了以下的输出:
connection to server successfully set status:true get from cache:5 increment value:7 decrement value:6 get from cache:6