redis的应用场景和数据结构

redis的应用场景

缓存(数据查询、短连接、新闻内容、商品内容等等) ​

聊天室的在线好友列表 ​ • 任务队列。(秒杀、抢购、12306等等) ​

网站访问统计

​ 数据过期处理(可以精确到毫秒)

 redis的数据结构
redis存储的是:key,value格式的数据,其中key都是字符串;value有5种不同的数据结构:
     
        1) 字符串类型 string
            存储set key value 
                  127.0.0.1:6379> set username zhangsan 
                  存储成功会返回:OK
            获取: get key 
                  127.0.0.1:6379> get username 
                  获取成功会返回:"zhangsan
            删除: del key 127.0.0.1:6379> del age 
                  删除成功会返回删除记录数:(integer) 1
        2) 哈希类型 hash : map格式 
            存储: hset key field value 127.0.0.1:6379> hset myhash username lisi              (integer) 1 
                  127.0.0.1:6379> hset myhash password 123 
(integer) 1

            获取:
            hget key field: 获取指定的field对应的值 127.0.0.1:6379> hget myhash username 
            返回:"lisi"

             hgetall key:获取所有的field和value 127.0.0.1:6379> hgetall myhash
         返回所有的key、value:
             "username"
              "lisi"
              "password"
              "123"

        3. 删除: hdel key field
           127.0.0.1:6379> hdel myhash username 
           返回:(integer) 1
        3) 列表类型 list : linkedlist格式。支持重复元素
           1. 添加:
            1. lpush key value: 将元素加入列表左表
                
            2. rpush key value:将元素加入列表右边
                
                127.0.0.1:6379> lpush myList a
                (integer) 1
                127.0.0.1:6379> lpush myList b
                (integer) 2
                127.0.0.1:6379> rpush myList c
                (integer) 3
        2. 获取:
            * lrange key start end :范围获取
                127.0.0.1:6379> lrange myList 0 -1
                1) "b"
                2) "a"
                3) "c"
        3. 删除:
            * lpop key: 删除列表最左边的元素,并将元素返回
            * rpop key: 删除列表最右边的元素,并将元素返回
        4) 集合类型 set  : 不允许重复元素
             1. 存储:sadd key value 127.0.0.1:6379> sadd myset a 
                     (integer) 1 
                     127.0.0.1:6379> sadd myset a (integer) 0 
             2. 获取:smembers key:获取set集合中所有元素 127.0.0.1:6379> smembers myset 
               "a" 
             3. 删除:srem key value:删除set集合中的某个元素 127.0.0.1:6379> srem       myset a 
(integer) 1
        5) 有序集合类型 sortedset:不允许重复元素,且元素有顺序每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。 ​ 
            1. 存储:zadd key score value 127.0.0.1:6379> zadd mysort 60 zhangsan (integer) 1 
                     127.0.0.1:6379> zadd mysort 50 lisi 
(integer) 1     
                     127.0.0.1:6379> zadd mysort 80 wangwu 
(integer) 1 
            2. 获取:zrange key start end [withscores] 127.0.0.1:6379> zrange mysort 0 -1 
                     1) "lisi" 
                     2) "zhangsan" 
                     3) "wangwu" ​ 
                   127.0.0.1:6379> zrange mysort 0 -1 withscores
                     1) "zhangsan" 
                     2) "60" 
                     3) "wangwu" 
                     4) "80" 
                     5) "lisi" 
                     6) "500" 
            3. 删除:zrem key value 
                   127.0.0.1:6379> zrem mysort lisi
 (integer) 1 ​ 




 通用命令 
     1. keys * : 查询所有的键 
     2. type key : 获取键对应的value的类型 
     3. del key:删除指定的key value

  • 22
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值