Redis学习 —— 管道 与 位图

Posted fonxian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis学习 —— 管道 与 位图相关的知识,希望对你有一定的参考价值。

一、管道

管道的本质是,将客户端与服务端的交互,由写—— 读 —— 写 —— 读,变为 写—— 写—— 读——读。

两个连续的写操作和两个连续的读操作总共只会花费一次网络来回,就好比连续的 write 操作合并了,连续的 read 操作也合并了一样。

二、位图

使用bit来存储数据,例如一周的签到,可以使用 7个位来表示,签到了的用1标记,未签到的用0标记。

设置与获取

设置

127.0.0.1:6379> setbit week 1 1
(integer) 0
127.0.0.1:6379> setbit week 2 0
(integer) 0
127.0.0.1:6379> setbit week 3 0
(integer) 0
127.0.0.1:6379> setbit week 4 0
(integer) 0

获取

127.0.0.1:6379> getbit week 4
(integer) 0

统计

bitcount name start end,其中的start和end的单位是byte,也就是8个bit。

例如bitcount s 0 0统计的是第一个字符,也就是第一个8位的存在的1的个数

127.0.0.1:6379> bitcount week 0 0
(integer) 1

以上是关于Redis学习 —— 管道 与 位图的主要内容,如果未能解决你的问题,请参考以下文章

数组与链表的应用-位图数组在Redis中的应用

Redis学习笔记7--Redis管道(pipeline)

redis学习教程五《管道分区》

Redis学习笔记4--Redis管道(pipeline)

Redis学习笔记-管道/分布式

Redis学习笔记