美文网首页工作生活
Redis----字符串

Redis----字符串

作者: 杨凯飞 | 来源:发表于2019-07-04 14:07 被阅读0次

        字符串类型是Redis最基础的数据结构,其它几种数据结构都是在字符串类型基础上构建的。需要注意的是字符串值最大不能超过512MB

    命令

            1、添加值

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

    ex seconds:为键设置秒级过期时间

    px milliseconds:为键设置毫秒级过期时间

    nx:键必须不存在,才可以设置成功,用于添加

    xx:与nx相反,键必须存在,才可以设置成功,用于更新。

插入成功返回ok 

            2、获取值

get key

存在返回value

不存在返回nil(空)

            3、批量设置值

mset k1 v1 k2 v2 k3 v3

成功返回ok

            4、批量获取值

mget k1 k2 k3 k4

返回结果为:

    "v1"

    "v2"

    "v3"

    "v4"

如果其中一个不存在,则返回nil,如k2不存在返回结果为

    "v1"

    (nil)

    " v3"

    " v4"

批量操作命令可以提交效率,可以减少n次操作的网络开销,可以对比图3-1、3-2,可以看到批量操作减少了中间大部分的网络开销

图3-1 n次get/set操作 图3-2 mget/mset操作

            5、计数

incr key 

incr用于计数操作,如每条文字的点赞次数、转发量等等

返回结果

    如果值不是整数:则返回错误 (error)

    值是整数:返回自增后的结果

    键值不存在:新增一个键,值为0。然后执行incr操作返回1

其它命令

decr key  自减操作

incrby key number 自增指定的数字

decrby key number 自减指定的数字

incrbyfloat key number 自增浮点数

            6、追加字符串

append key value    向字符串尾部追加值

            7、字符串长度

strlen key        返回字符串的长度,一个中文占用3个字节

            8、设置并且返回值

getset key value

getset和get一样会返回值,getset返回之前设置的值

getset和set一样会设置值

            9、设置指定位置的字符

setrange key position value

            10、获取部分字符串

getrange key start end

    内部编码

        Redis会根据当前值的类型和长度决定使用哪种内部编码,字符串的类型的内部编码有3种

        int: 8个字节的长整形

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

        raw: 大于39个字节的字符串。

上面的类型可以使用命令:object encoding key来进行显示变量类型

相关文章

  • Redis----字符串

    字符串类型是Redis最基础的数据结构,其它几种数据结构都是在字符串类型基础上构建的。需要注意的是字符串值最大不能...

  • REDIS----守护线程

    redis在windows环境下是不支持守护线程的,但是linux环境下却可以,我使用的是centos7虚拟机,r...

  • Redis---- php简单操作

    $redis = new Resid();$redis->connect('192.168.160.128',63...

  • REDIS----配置文件----REPLICATION

    REPLICATION部分: 1.介绍: 主从复制。 使用copyof来使Redis实例成为另一个Redis服务器...

  • REDIS----配置文件----CLIENTS

    CLIENTS部分: 1.最大连接数: 设置同时连接的最大客户端数。默认情况下,此限制设置为10000个客户端,但...

  • REDIS----配置文件----SNAPSHOTTING

    SNAPSHOTTING部分: 1.触发条件: 如果既定的秒数和给定的针对数据库的写操作次数均发生,则将保存数据库...

  • REDIS----配置文件----INCLUDES

    INCLUDES部分: 在此处包括一个或多个其他配置文件。 如果您具有可用于所有Redis服务器的标准模板,但还需...

  • REDIS----配置文件----MODULES

    MODULES部分: 启动时加载模块。如果服务器无法加载模块,它将中止。可以使用多个loadmodule指令。加载方式:

  • REDIS----配置文件----NETWORK

    NETWORK部分: 默认情况下,如果未指定“ bind”配置指令,则Redis将侦听服务器上所有可用网络接口的连...

  • REDIS----配置文件----GENERAL

    GENERAL部分: 1.守护线程: 默认情况下,Redis不会作为守护程序运行。 如果需要,请使用“是”。 请注...

网友评论

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

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