irpas技术客

《Redis实战》之使用BitMap实现用户签到功能_小米吃辣椒2022_bitmap 签到

irpas 5933

目录

一、实现逻辑分析

二、BitMap常用操作命令

三、BitMap签到功能实战


一、实现逻辑分析

二、BitMap常用操作命令

Redis中是利用String类型数据结构实现BitMap,因此最大上限是512M,转换为bit则是2^32个bit位。

BitMap的操作命令有:

SETBIT:向指定位置offset存入一个0或1

GETBIT:获取指定位置offset的bit值

BITCOUNT:统计BitMap中值为1的bit位的数量

BITFIELD: 操作(查询,修改,自增)BitMap中bit数组中的指定位置offset的值

BITFIELD_RO: 获取BitMap中bit数组,并以十进制形式返回

BITTOP:? 将多个BitMap的结果做位运算(与,或,异或)

BITPOS:? 查找bit数组中指定范围内第一个0或者1出现的位置

?三、BitMap签到功能实战

(1)将用户以及年月作为bitMap的key,每天的签到情况作为vlaue写入到redis中

?(2)连续签到统计

?

?


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #BitMap #签到 #获取