• redis学习笔记


    redis数据类型及支持的常用操作:

    string

    set/get/append/incr/decr/getrange/mget/mset/strlen

    127.0.0.1:6379> set usersession:1 13323232323
    OK
    127.0.0.1:6379> get usersession:1
    "13323232323"
    127.0.0.1:6379> incr usersession:1
    (integer) 13323232324
    get  usersession:1 //  13323232324
     127.0.0.1:6379> append usersession:1 "extra data"
    (integer) 21
    127.0.0.1:6379> get usersession:1
    "13323232324extra data"
    127.0.0.1:6379> set customer:1 "customer00123"
    OK
    127.0.0.1:6379> getrange customer:1 8 13
    "00123"

     127.0.0.1:6379> strlen customer:1
      (integer) 13

    127.0.0.1:6379> mset order:1 "order1 data" order:2 "order2 data"
    OK
    127.0.0.1:6379> mget order:1 order:2
    1) "order1 data"
    2) "order2 data"

    list : order list

    just a sorted list of strings, sorted by insertion order

    可以执行以下操作:

    lpush/rpush/lrem/lset/lindex/lrange/llen/lpop/rpop/ltrim

    127.0.0.1:6379> lpush recentcomments "comment 1"
    (integer) 1
    127.0.0.1:6379> lrange recentcomments 0 1
    1) "comment 1"
    127.0.0.1:6379> lpush recentcomments "comment 2"
    (integer) 2
    127.0.0.1:6379> lrange recentcomments 0 2
    1) "comment 2"
    2) "comment 1"
    127.0.0.1:6379> rpush recentcomments "comment 3"
    (integer) 3
    127.0.0.1:6379> lrange recentcomments 0 3
    1) "comment 2"
    2) "comment 1"
    3) "comment 3"
    127.0.0.1:6379> rpush recentcomments "comment 4"
    (integer) 4
    127.0.0.1:6379> rpush recentcomments "comment 5"
    (integer) 5
    127.0.0.1:6379> lrange recentcomments 0 6
    1) "comment 2"
    2) "comment 1"
    3) "comment 3"
    4) "comment 4"
    5) "comment 5"
    127.0.0.1:6379> rpush recentcomments "comment 6"
    (integer) 6
    127.0.0.1:6379> lrange recentcomments 0 6
    1) "comment 2"
    2) "comment 1"
    3) "comment 3"
    4) "comment 4"
    5) "comment 5"
    6) "comment 6"
    127.0.0.1:6379> ltrim recentcomments 0 4
    OK
    127.0.0.1:6379> lrange recentcomments 0 6
    1) "comment 2"
    2) "comment 1"
    3) "comment 3"
    4) "comment 4"
    5) "comment 5"
    127.0.0.1:6379>
    
    
    127.0.0.1:6379> lindex recentcomments 2
    "comment 3"
    127.0.0.1:6379> lrange recentcomments 0 5
    1) "comment 2"
    2) "comment 1"
    3) "comment 3"
    4) "comment 4"
    5) "comment 5"
    127.0.0.1:6379> lpop recentcomments
    "comment 2"
    127.0.0.1:6379> lrange recentcomments 0 5
    1) "comment 1"
    2) "comment 3"
    3) "comment 4"
    4) "comment 5"
    127.0.0.1:6379> lpop recentcomments
    "comment 1"
    127.0.0.1:6379> lrange recentcomments 0 5
    1) "comment 3"
    2) "comment 4"
    3) "comment 5"
    127.0.0.1:6379> rpop recentcomments
    "comment 5"
    127.0.0.1:6379> lrange recentcomments 0 5
    1) "comment 3"
    2) "comment 4"
    127.0.0.1:6379>
    
    redis> RPUSH mylist "hello"
    (integer) 1
    redis> RPUSH mylist "hello"
    (integer) 2
    redis> RPUSH mylist "foo"
    (integer) 3
    redis> RPUSH mylist "hello"
    (integer) 4
    redis> LREM mylist -2 "hello"
    (integer) 2
    redis> LRANGE mylist 0 -1
    1) "hello"
    2) "foo"

    sets: 

    sets contain a collection of unique strings

    sadd/scard/sdiff/sinter/sunion/sismember/smembers/smove/srem

    127.0.0.1:6379> sadd post:1:likes "joe" "bob" "mary"
    (integer) 3
    127.0.0.1:6379> scard post:1:likes
    (integer) 3
    127.0.0.1:6379> smembers post:1:likes
    1) "joe"
    2) "bob"
    3) "mary"
    127.0.0.1:6379> sadd post:2:likes "joe" "tim"
    (integer) 2
    127.0.0.1:6379> sdiff post:1:likes post:2:likes
    1) "bob"
    2) "mary"
    127.0.0.1:6379> sinter post:1:likes post:2:likes
    1) "joe"
    127.0.0.1:6379>

    sorted sets:

    zadd,zcard,zcount,zincrby,zrange,zrank,zrem,zscore

    127.0.0.1:6379> zadd highscores 120 "joe" 100 "bob" 150 "mary" 104 "tim"
    (integer) 4
    127.0.0.1:6379> zrange highscores 0 4
    1) "bob"
    2) "tim"
    3) "joe"
    4) "mary"
    127.0.0.1:6379> zrange highscores 0 4 withscores
    1) "bob"
    2) "100"
    3) "tim"
    4) "104"
    5) "joe"
    6) "120"
    7) "mary"
    8) "150"
    127.0.0.1:6379> zadd highscores 125 "joe"
    (integer) 0
    127.0.0.1:6379> zrange highscores 0 4 withscores
    1) "bob"
    2) "100"
    3) "tim"
    4) "104"
    5) "joe"
    6) "125"
    7) "mary"
    8) "150"

    hash

    maps between string fields and string values

    hset/hmset/hget/hmget/hgetall/hdel/hexists/hincrby/hkeys/hvals

    pub and sub

    redis can be used as a message bus

    127.0.0.1:6379> subscribe greetings
    Reading messages... (press Ctrl-C to quit)
    1) "subscribe"
    2) "greetings"
    3) (integer) 1
    1) "message"
    2) "greetings"
    3) "hello redis"
    1) "message"
    2) "greetings"
    3) "hello redis again"
    
    psubscribe gree* // 則這種情況下會subscribe所有的gree
    // 另外一個窗口
    C:Redis>redis-cli.exe
    127.0.0.1:6379> publish greetings "hello redis"
    (integer) 1
    127.0.0.1:6379> publish greetings "hello redis again"
    (integer) 1
    127.0.0.1:6379>

    transction

  • 相关阅读:
    Android 主题theme说明 摘记
    Android开发 去掉标题栏方法 摘记
    安卓项目五子棋代码详解(二)
    关于 ake sure class name exists, is public, and has an empty constructor that is public
    百度地图3.0实现图文并茂的覆盖物
    android onSaveInstanceState()及其配对方法。
    关于集成科大讯飞语音识别的 一个问题总结
    android 关于 webview 控制其它view的显示 以及更改view数据失败的问题总结
    C# 解析 json Newtonsoft果然强大,代码写的真好
    c#数据类型 与sql的对应关系 以及 取值范围
  • 原文地址:https://www.cnblogs.com/kidsitcn/p/7967716.html
Copyright © 2020-2023  润新知