redis 应用

一 String (字符)

常用命令

  1:set    添加一个值
  2: get    获得一个值
  3: mset  添加一组值
  4: mget  获得一组值
  5: incr    自增++
  6: incrby  自增 指定 +?的数字
  7: decr   自减
  8: decrby 自减 指定 +?的数字
  9: strlen 字符长度
  10: setnx key不存的时候才创建key

实现案例

 1: 点击阅读量 用 incr (中小型 因为超过10W 就不能自增了)

二 hash (散列类型 )

(类似(Map<String,Map<Object,Object>>))

常用命令

 1: hset 设置一个键值对
  2: hget  获得一个键值对
  3: hmset  设置一组键值对
  4: hmget   获得一组键值对
  5: hgetall  获得所有键值对
  6: hlen  获得某个key键值对的数量
  7: hdel  删除

实现案例

1: 电商购物车 可以用这个散列来做 但是适合 中小型公司

三 set (集合)

常用命令

1: sadd 添加一个元素
2: srem 删除一个元素
3: smembers 遍历所有元素
4: sismember 判断元素是否存在
5: scard 元素总和
6: srandmember 随机弹出一个元素(不会删除)
7: spop 随机弹出一个元素并且删除
8: sdiff 以第一个集合为基准 取与第二个集合不存在的元素
9: sinter 求两个集合的交集
10: sunion 两个集合合并

实现案例

1: 微信抽奖
2:朋友圈点赞
3:共同关注的人
4: 内推可能认识的人

四 zset (有序集合)

常用命令

1: zadd 添加一个元素
2 : zrange 获取下标范围的元素(按照分数从小到大)
3: zscore 获取分数
4: zrem 删除元素
5: zrangebyscore 获取指定分数范围的元素
6: zincrby 增加元素的分数
7: zcard 统计元素的个数
8: zcount 指定分数的内的元素个数
9: zremrangebyrank 按照排名删除指定 的范围
10: zrank 从小到大
11: zrevrank 从大到小

实现案例

1 商品热门排名
2 抖音热搜

五 list(列表)

常用命令

1: lpush 向左添加一个元素
2: rpush 向右添加一个元素
3: lrang 查看列表 范围
4:llen 列表中 元素的个数

实现案例

1 微信公众号订阅
2 商品评论

六 bitmap(位图)

常用命令

1: setbit key offset value
2: getbit key offset
底层实际类型为 string 是一个 最大 有2^32 大小 最终是变声ascii 编码 只能标记为 0 1 使用 二值统计的时候可以考虑 , 动态扩容 每次 一个byte

实现案例

1: 案例 签到 这里 可以 以每个人为key 然后需要 365位 就够了 如果这个人来的 就设置位1 没来 就不用 变更
2:统计日活 把用户id 在映射车bitmap 的 下标 key 位 日期 然后 可以统计日活 ,如果 公司业务不是特别大 也可 统计UV 太大不建议使用 因为 这个每天产生的数据累加 很可怕
3: 电影的播放量 广告是否被点击 等等 那种需要 确定 是 和 否的 工作都可以考虑一下 但是 要在 用户量的前提下

七 hyperLogLog(统计)

常用命令

1: pfadd 添加元素
2: pfcount 获取数量
3: pfmerge 合并两个集合并且去重

实现案例

hyperloglog 是一种算法 本身不会存入任何数据 不会带来 数据膨胀的问题 这样就很好解决 使用bitmap 取 统计 uv 出现的数据膨胀问题 但是 同时这个 不是精确 统计 根据 redis 文档说明 精度误差大概在 0.81% 如果可以 容忍 这么大小的误差 可以说这个是一个很好的选择 如果 想 深入了解请自行查阅资料
1: uv 的统计 统计每个独立ip 一天的 单个登录

八 GEO(地理)

常用命令

底层数据 格式位zset 如果出现中文乱码 可以 使用 redis-cli --raw 来进入redis
1: geoadd 添加一个元素 key 经度 维度 位置名称
2: geopos 从键里面返回锁给定的位置
3: geodist 返回两个给定位置之间的距离
4: georadius 以给定的纬度为中心 返回与中心距离不超过给定最大距离的所有位置元素
5:geohash 返回一个或者多个位置

实现案例

1: 这个案例就很好想了 第一个就是类似美团的哪个周围 500m 范围内的商家
2:找酒店等等

九 stream(没人用)

功能

http://doc.redisfans.com/ 命令大全
命令不区分大小写,而key是区分大小写的

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值