Redis通用命令及数据结构

2019-02-20  本文已影响0人  Toyouy

目录

1、通用命令(更多命令可以查看http://doc.redisfans.com/
image.png
2、数据结构和内部编码
image.png
3、单线程架构

注意:
1、一次只运行一条命令
2、拒绝长(慢)命令
keys, flushall, flushdb, slow lua scrpit, mutil/exec, operte big value(collection)


4、、字符串String
image.png

场景:缓存、计数器、分布式锁等等

命令:
get、set、del
    get key  #获取key对应的value
    set key value  #设置key-value
    del key  #删除key-value

incr、decr、incrby、decrby
    incr key    #key自增1,如果key不存在,自增后get(key)=1
    decy key    #key自减1,如果key不存在,自减后get(key)=1
    incrby key k  #key自增k,如果key不存在,自增后get(key)=k
    decrby key k  #key自减k,如果key不存在,自减后get(key)=k

set、setnx、set xx
    set key value    #不管key是否存在,都设置
    setnx key value  #key不存在,才设置
    set key value xx #key存在才设置    

mget、mset
    mget key1 key2 key3…    #批量获取key,原子操作
    mset key1 key2 value1 value2 …    #批量设置key-value

getset、append、strlen
    getset key newvalue    #set key newvalue并返回旧的value
    append key value       #将value追加到旧的value
    strlen key             #返回字符串的长度(注意中文)
    
incrbyfloat、getrange、setrange
    incrbyfloat key 3.5    #增加key对应的值3.5
    getrange key start end    #获取字符串指定下标所有的值
    setrange key index value    #设置字符串指定下标所有对应的值
image.png image.png
5、hash
命令:
hget、hset、hdel
    hget key field        #获取hash key对应field的value
    hset key field value  #设置hash key对应field的value
    hdel key field        #删除hash key对应field的value

hexists、hlen
    hexists key field    #判断hash key是否有field
    hlen key field       #获取hash key field的数量

hmget、hmset
    hmget key field1 field2…    #批量获取hash key的一批field对应的值
    hmset key field1 value1 field2 value…    #批量设置hash key的一批field value
上一篇下一篇

猜你喜欢

热点阅读