Redis--字符串

Redis的键都是字符串类型,而其他几种数据结构都是在字符串类型基础上构建的。

所谓的字符串类型的值,实际上可以是字符串(简单的字符串,复杂的字符串--json、xml等),数字(整数,浮点数),二进制(图片、音频,视频),但是其值最大不能超过512MB


常用命令:

set key value [ex seconds] [px milliseconds] [nx|xx]

set 命令的几个选项:

--ex seconds为键设置秒级过期时间   ===等同命令===   setex  key seconds value

--px millionseconds为键设置毫秒级过期时间

--nx键必须不存在,才可以设置成功,用于添加    ===等同命令=== setnx key value可以作为分布式锁的一种实现(Redis官方给出使用setnx实现分布式锁的方法 https://redis.io/topics/distlock)

--xx 键必须存在,才可以设置成功,用于更新

批量操作 ---优选,减少网络消耗

mset key1 value1 key2 value2 key3 value3

mget key1 key2 key3

incr key用于对值做自增操,返回结果三种情况

---值不是正数,返回错误

---值是正数,返回自增后的结果

---键不存在,按照值为0自增,返回结果为1

类似命令

---自减  decr key

---自增指定数字 incrby key num

---自减指定数字 decrby key num

---自增浮点数 incrfloat key num


--------------------------------------不常用命令

--向字符串val末尾追加值 append key value

--获取字符串val长度 strlen key

--设置并返回key的原value值  getset key value

--设置指定位置的字符  setrange key index value

--获取部分字符串  getrange key startIndex endIndex

----------------------------------------内部编码

字符串类型内部编码有3种

---int:8个字节的长整型

---embstr:小于等于39个字节的字符串

---raw:大于39字节的字符串

Redis会根据当前值类型和长度决定使用哪种内部编码实现

object encoding key

--------------------运用

---计数

---共享session,将登陆信息保存在Redis里

---限速(通过键过期,计数,存在)保证,一段时间内的访问次数

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容