基本操作
keys * //查看当前库的所有key
exists key //查看key是否存在
type key //查看key类型
del key //删除指定key数据
unlink key //根据value选择非阻塞删除
expire key 10//给指定的key设置过期时间(10秒钟)
select index//切换库(1-15)
dbsize//产看当前库的key数量
flush db//清空当前库
常用String操作
set <key> <value>
get <key>
append <key> vlaue//给指定的key的值添加vlaue到末尾,返回追加后的长度
strlen <key>//获取值的长度
setnx <key><value>//在key不存在时可设置键值成功
incr <key>//将key储存的数字值加1
decr <key>//将key储存的数字值减1
incr
对存储在key中的值进行原子性的加1操作
redis是单线程操作,不会被线程调度机制打断。
例:java中,设置两个线程对i分别执行100次的i自增操作。
对i的自增操作分为三步:取值,加一,赋值
在两个不同的线程中,假设线程1的i已经加到99,而线程2进入了赋值阶段使i=0或者别的数值
这两个线程相互影响从而使i的范围为2-100之间
即java中i++不是原子操作