redis的bitmap操作

Bitmaps 位图

位存储

统计疫情感染人数:0 1 0 1

统计用户信息:活跃,不活跃的。登陆、未登录的。打卡、未打卡的。像这种两个状态的都可以用bitmaps。

Bitmaps位图,数据结构,都是操作二进制位来进行记录,就只有0和1两个状态。

365天 = 365bit 1字节 = 8bit 46个字节左右

测试:bitmap来记录周一到周日的打卡

周一:1 周二 0 …

127.0.0.1:6379> setbit sign 0 0
(integer) 0
127.0.0.1:6379> setbit sign 1 0
(integer) 0
127.0.0.1:6379> setbit sign 2 1
(integer) 0
127.0.0.1:6379> setbit sign 3 1
(integer) 0
127.0.0.1:6379> setbit sign 4 1
(integer) 0
127.0.0.1:6379> setbit sign 5 0
(integer) 0
127.0.0.1:6379> setbit sign 6 0
(integer) 0

查看某一天的打卡情况,

127.0.0.1:6379> getbit sign 2
(integer) 1
127.0.0.1:6379> getbit sign 6
(integer) 0

我们发现周三打卡成功呢,周日没有打卡(不用打卡,自然没有打卡)

###############################

统计操作,统计打卡的天数

127.0.0.1:6379> bitcount sign
(integer) 3

上一篇:PTA 打印沙漏


下一篇:填坑借口自动化-在请求报文里添加报文签名