Redis学习-String类型基本知识与底层实现
一、基本知识
1、关于string类型的基本操作指令
string一共有23个指令,下面我们来执行以下所有的指令,看看它的效果和作用。、
具体指令说明可以参考官方文档说明:http://www.redis.cn/commands.html#string
127.0.0.1:6379> set redis good //添加key-value:redis good
OK
127.0.0.1:6379> get redis //获取redis的值
"good"
127.0.0.1:6379> mset redis1 good1 redis2 good2 //同时设置redis1、redis2的值good1,good2
OK
127.0.0.1:6379> mget redis redis1 redis2 //同时获取redis、redis1、redis2的值
1) "good"
2) "good1"
3) "good2"
127.0.0.1:6379> strlen redis //获取redis值的字符串长度
(integer) 4
127.0.0.1:6379> append redis -nice //在redis值后面追加“-nice”
(integer) 9
127.0.0.1:6379> get redis
"good-nice"
127.0.0.1:6379> append redis3 -nice //redis3不存在,则新建redis3
(integer) 5
127.0.0.1:6379> get redis3
"-nice"
127.0.0.1:6379> set num 100 //设置key num=100
OK
127.0.0.1:6379> incr num //自增1
(integer) 101
127.0.0.1:6379> incrby num 100 //增加100
(integer) 201
127.0.0.1:6379> decr num //自减1
(integer) 200
127.0.0.1:6379> decrby num 100 //减100
(integer) 100
127.0.0.1:6379> incrbyfloat num 1.01 //加浮点数
"102.01"
127.0.0.1:6379> set bit "\x00\xff\x00" //设置key bit = “0000 0000 1111 1111 0000 0000” -- 二进制表示好理解下面内容
OK
127.0.0.1:6379> bitcount bit //计算bit中位的值为1的数量
(integer) 8
127.0.0.1:6379> set bit2 "\xff\x00\xff" //设置key bit2 = “1111 1111 0000 0000 1111 1111”
OK
127.0.0.1:6379> bitop and bit3 bit bit2 //逻辑and位运算,结果放在bit3,为 0000 0000 0000 0000 0000 0000
(integer) 3
127.0.0.1:6379> bitcount bit3
(integer) 0
127.0.0.1:6379> bitpos bit 1 0 // bit中从0开始第一个位的值为1的索引
(integer) 8
127.0.0.1:6379> getbit bit 8 //获取索引8的位的值
(integer) 1
2、set、get与mset、mget的区别在哪里?
单个指令的执行过程