Redis 实现统计在线人数、每日签到功能
Redis About 638 words场景
- 统计用户每日签到情况
- 统计在线人数(比
HyperLogLog更精确)
SETBIT key offset value
可用版本: >= 2.2.0 时间复杂度: O(1)
- 对
key所储存的字符串值,设置或清除指定偏移量上的位(bit) - 位的设置或清除取决于
value参数,可以是0也可以是1 - 当
key不存在时,自动生成一个新的字符串值 - 字符串会进行伸展(
grown)以确保它可以将value保存在指定的偏移量上。当字符串值进行伸展时,空白位置以0填充 offset参数必须大于或等于0,小于2^32(bit映射被限制在512MB之内)
setbit online_hc 1000 1
# 输出:(integer) 0
getbit online_hc 1000
# 输出:(integer) 1
BITCOUNT key [start] [end]
可用版本: >= 2.6.0 时间复杂度: O(N)
计算给定字符串中,被设置为1的比特位的数量
- 一般情况下,给定的整个字符串都会被进行计数,通过指定额外的
start或end参数,可以让计数只在特定的位上进行 start和end参数可以使用负数值: 比如-1表示最后一个字节,-2表示倒数第二个字节,以此类推- 不存在的
key被当成是空字符串来处理,因此对一个不存在的key进行BITCOUNT操作,结果为0。
bitcount online_hc
# 输出:(integer) 1
Views: 6,654 · Posted: 2019-04-08
————        END        ————
Give me a Star, Thanks:)
https://github.com/fendoudebb/LiteNote扫描下方二维码关注公众号和小程序↓↓↓
Loading...