Redis------String

string机制

  • SDS结构------>底层是字符数组,以"\0"结尾,这样就可以重用C语言库里的<string.h>中的部分函数。
  • string内部结构实现上类似java的ArrayList
  • 预先分配比实际占用空间大的空间,这样,当字符串长度变大时不用再申请内存空间
  • 自动扩容(字符串存储空间),当字符串长度小于1M时,加倍现有的空间扩容,超过1M时,多扩容1M的空间。

字符串命令

  • set dog “wang” ex 60 nx//过期时间:60s,nx—>针对key是否存在设置规则

  • getset dog “li”
    输出:“wang” //重新设置value值,并返回旧值

  • msetnx dog wang cat li //用于同时设置多个键值对。当key存在时执行失败

  • set word “hello woild”
    setrange word 6 pengyu //从偏移量6开始覆盖

bitmap

  • 通过将比特位设置为0/1来实现数据存取,本质是一个字节数组,存储上限2^32
  • 应用场景:1代表签到,0代表未签,可以花费很少的时间统计用户365天签到次数, 位图中的每一条记录占用一bit,一年是365位;若使用string存储,则需要365个键值对
  • 自动扩容
  • 命令:对a设置其bit位上的值。setbit user 1 1就错了!!!1
    set user a
    setbit a 1 1
    setbit a 2 1
    setbit a 4 1
    get a
    输出:“h”

INCR数值操作

  • 自增/减、加/减1
  • 应用场景:点赞、关注
  • 注意:redis有规定key----对应的value数值的范围,切类型must是整数、浮点数
  • 实例:incr fans:num //自动创建key,初始化为1,每次增加1
    incrby fans:num 3//增加3
    incrbyfloat fans:num -10.5 //增加-10.5
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值