美文网首页
Redis-API-字符串

Redis-API-字符串

作者: 苏近之2017 | 来源:发表于2017-06-06 16:46 被阅读0次

字符串的值能够表示数字(整数、浮点数),甚至是二进制(图片、音频、视频),但是值不能超过512MB。

命令

设置值

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

参数列表:

参数名 描述
ex seconds 为键设置秒级过期时间
px milliseconds 为键设置毫秒级过期时间
nx 键必须不存在,才设置成功,用于添加
xx 键必须存在,才设置成功,用于更新
获取值
get key
image

如果键不存在,则返回 nil(空):

image

批量设置值

mset key value [key value...]
image

批量获取值

mget key [key...]
image

使用批量操作命令可以节省网络时间,提高开发效率。

因为 Redis 的处理能力已经足够高了,对于开发人员来说,网络可能会成为性能的瓶颈。

计数

incr key

incr命令用于对值做自增操作,返回结果分为三种:

  • 值不是整数,返回错误
  • 值是整数,返回自增后的结果
  • 键不存在,按照值为0自增,返回结果为1

如果值不为整数,那么会返回错误

image

除了 incr命令,Redis 提供了 decr(自减)、incrby(自增指定数字)、decrby(自减指定数字)、incrbyfloat(自增浮点数)。

追加值

append key value
image

字符串长度

strlen key
image

如果是中文,则每个字符占 3 个字节。

设置并返回原值

getset key value
image

设置指定位置的字符

setrange key offset value
image

截取字符串

getrange key start end
image

内部编码

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

  • int
  • embstr
  • raw

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

image

长字符是值大于 39 个字符,使用 raw。

image

典型使用场景

  1. 缓存功能
  2. 计数
  3. 共享 Session
  4. 限制用户操作速度,例如存储重新获取验证码的时间间隔

相关文章

  • Redis-API-字符串

    字符串的值能够表示数字(整数、浮点数),甚至是二进制(图片、音频、视频),但是值不能超过512MB。 命令 设置值...

  • redis-API-字符串

    值最大不能超过512MB 设置值 setex和setnx set key value [ex 秒] [px 毫秒]...

  • Redis-API-哈希

    哈希,也叫作字典或关联数组,指的是健值本身又是一个键值对结构。伪代码如下: 命令 设置值 获取值 删除字段 计算个...

  • redis-API-列表

    文档地址 列表类型有两个特点: 第一、列表中的元素是有序的,这就意味着可以通过索引下标获取某个元素或者某个范围内的...

  • redis-API-集合

    文档地址 内部编码 intset(整数集合): 当集合中的元素都是整数且元素个数小于set-maxintset-e...

  • redis-API-哈希

    文档地址 内部编码 ziplist(压缩列表) hashtable(哈希表) 编码的选择 内部编码默认是zipli...

  • redis-API-有序集合

    内部编码 ziplist(压缩列表): 当有序集合的元素个数小于zset-max-ziplistentries配置...

  • redis-API-全局命令

    单线程架构 纯内存 非阻塞i/o 单线程避免了线程切换和竟态产生的消耗 概要: 使用多路复用技术 全局命令 查看所...

  • Redis-API-全局变量

    全局命令 Redis 有 5 种数据结构,它们是键值对中的值,对于键来说有一些通用的命令。 查看所有的键 键的总数...

  • Javascript知识点整合

    字符串 单行字符串: ‘字符串’或“字符串” 多行字符串: `多行字符串` 字符串操作: 字符串连接‘+’号 长度...

网友评论

      本文标题:Redis-API-字符串

      本文链接:https://www.haomeiwen.com/subject/mnfnfxtx.html