zoukankan      html  css  js  c++  java
  • Memcached命令-存储命令-查找命令-清理命令

    Memcached set 存储命令

    Memcached set 命令用于将 value(数据值) 存储在指定的 key(键) 中。

    如果set的key已经存在,该命令可以更新该key所对应的原来的数据,也就是实现更新的作用。

    语法:

    set 命令的基本语法格式如下:

    set key flags exptime bytes [noreply] 
    value 

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。
    • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
    • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
    • bytes:在缓存中存储的字节数
    • noreply(可选): 该参数告知服务器不需要返回数据
    • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)

    实例

    以下实例中我们设置:

    • key → runoob
    • flag → 0
    • exptime → 900 (以秒为单位)
    • bytes → 9 (数据存储的字节数)
    • value → memcached
    set wenhy0 900 9
    memcached
    STORED
    
    get wenhy
    VALUE wenhy 0 9
    memcached
    
    END

    输出

    如果数据设置成功,则输出:

    STORED

    输出信息说明:

    • STORED:保存成功后输出。
    • ERROR:在保持失败后输出。

    Memcached add 命令

    Memcached add 命令用于将 value(数据值) 存储在指定的 key(键) 中。

    如果 add 的 key 已经存在,则不会更新数据,之前的值将仍然保持相同,并且您将获得响应 NOT_STORED

    语法:

    add 命令的基本语法格式如下:

    add key flags exptime bytes [noreply]
    value

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。
    • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
    • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
    • bytes:在缓存中存储的字节数
    • noreply(可选): 该参数告知服务器不需要返回数据
    • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)

    实例

    以下实例中我们设置:

    • key → new_key
    • flag → 0
    • exptime → 900 (以秒为单位)
    • bytes → 10 (数据存储的字节数)
    • value → data_value
    add new_key 0 900 10
    data_value
    STORED
    get new_key
    VALUE new_key 0 10
    data_value
    END

    输出

    如果数据添加成功,则输出:

    STORED

    输出信息说明:

    • STORED:保存成功后输出。
    • NOT_STORED :在保持失败后输出。

    Memcached replace 命令

    Memcached replace 命令用于替换已存在的 key(键) 的 value(数据值)

    如果 key 不存在,则替换失败,并且您将获得响应 NOT_STORED

    语法:

    replace 命令的基本语法格式如下:

    replace key flags exptime bytes [noreply]
    value

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。
    • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
    • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
    • bytes:在缓存中存储的字节数
    • noreply(可选): 该参数告知服务器不需要返回数据
    • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)

    实例

    以下实例中我们设置:

    • key → mykey
    • flag → 0
    • exptime → 900 (以秒为单位)
    • bytes → 10 (数据存储的字节数)
    • value → data_value

    以下实例中我们使用的键位 'mykey' 并存储对应的值 data_value。执行后我们替换相同的 key 的值为 'some_other_value'。

    add mykey 0 900 10
    data_value
    STORED
    get mykey
    VALUE mykey 0 10
    data_value
    END
    replace mykey 0 900 16
    some_other_value
    get mykey
    VALUE mykey 0 16
    some_other_value
    END

    输出

    如果数据添加成功,则输出:

    STORED

    输出信息说明:

    • STORED:保存成功后输出。
    • NOT_STORED:执行替换失败后输出。

    Memcached append 命令

    Memcached append 命令用于向已存在 key(键) 的 value(数据值) 后面追加数据 。

    语法:

    append 命令的基本语法格式如下:

    append key flags exptime bytes [noreply]
    value

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。
    • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
    • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
    • bytes:在缓存中存储的字节数
    • noreply(可选): 该参数告知服务器不需要返回数据
    • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)

    实例

    实例如下:

    • 首先我们在 Memcached 中存储一个键 runoob,其值为 memcached。
    • 然后,我们使用 get 命令检索该值。
    • 然后,我们使用 append 命令在键为 runoob 的值后面追加 "redis"。
    • 最后,我们再使用 get 命令检索该值。
    set wenhy 0 900 9
    memcached
    STORED
    get wenhy
    VALUE wenhy 0 9
    memcached
    END
    append wenhy 0 900 5
    redis
    STORED
    get wenhy
    VALUE wenhy 0 13
    memcachedredis

    END

    输出

    如果数据添加成功,则输出:

    STORED

    输出信息说明:

    • STORED:保存成功后输出。
    • NOT_STORED:该键在 Memcached 上不存在。
    • CLIENT_ERROR:执行错误。

    Memcached prepend 命令

    Memcached prepend 命令用于向已存在 key(键) 的 value(数据值) 前面追加数据 。

    语法:

    prepend 命令的基本语法格式如下:

    prepend key flags exptime bytes [noreply]
    value

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。
    • flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。
    • exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)
    • bytes:在缓存中存储的字节数
    • noreply(可选): 该参数告知服务器不需要返回数据
    • value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)

    实例

    实例如下:

    • 首先我们在 Memcached 中存储一个键 runoob,其值为 memcached。
    • 然后,我们使用 get 命令检索该值。
    • 然后,我们使用 prepend 命令在键为 runoob 的值后面追加 "redis"。
    • 最后,我们再使用 get 命令检索该值。
    set wenhy 0 900 9
    memcached
    STORED
    get wenhy
    VALUE wenhy 0 14
    memcached
    END
    prepend wenhy 0 900 5
    redis
    STORED
    get wenhy
    VALUE wenhy 0 14
    redismemcached
    END

    输出

    如果数据添加成功,则输出:

    STORED

    输出信息说明:

    • STORED:保存成功后输出。
    • NOT_STORED:该键在 Memcached 上不存在。
    • CLIENT_ERROR:执行错误。

    Memcached get 查找命令

    Memcached get 命令获取存储在 key(键) 中的 value(数据值) ,如果 key 不存在,则返回空。

    语法:

    get 命令的基本语法格式如下:

    get key

    多个 key 使用空格隔开,如下:

    get key1 key2 key3

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。

    实例

    在以下实例中,我们使用 runoob 作为 key,过期时间设置为 900 秒。

    set wenhy 0 900 9
    memcached
    STORED
    get wenhy
    VALUE wenhy 0 9
    memcached
    END



    Memcached delete 命令

    Memcached delete 命令用于删除已存在的 key(键)。

    语法:

    delete 命令的基本语法格式如下:

    delete key [noreply]

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。
    • noreply(可选): 该参数告知服务器不需要返回数据

    实例

    在以下实例中,我们使用 runoob 作为 key,过期时间设置为 900 秒。之后我们使用 delete 命令删除该 key。

    set wenhy 0 900 9
    memcached
    STORED
    get wenhy
    VALUE wenhy 0 9
    memcached
    END
    delete wenhy
    DELETED
    get wenhy
    END
    delete wenhy
    NOT_FOUND

    输出

    输出信息说明:

    • DELETED:删除成功。
    • ERROR:语法错误或删除失败。
    • NOT_FOUND:key 不存在。

    Memcached incr 与 decr 命令

    Memcached incr 与 decr 命令用于对已存在的 key(键) 的数字值进行自增或自减操作。

    incr 与 decr 命令操作的数据必须是十进制的32位无符号整数。

    如果 key 不存在返回 NOT_FOUND,如果键的值不为数字,则返回 CLIENT_ERROR,其他错误返回 ERROR


    incr 命令

    语法:

    incr 命令的基本语法格式如下:

    incr key increment_value

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。
    • increment_value: 增加的数值。

    实例

    在以下实例中,我们使用 visitors 作为 key,初始值为 10,之后进行加 5 操作。

    set visitors 0 900 2
    10
    STORED
    get visitors
    VALUE visitors 0 2
    10
    END
    incr visitors 5
    15
    get visitors
    VALUE visitors 0 2
    15
    END

    输出

    输出信息说明:

    • NOT_FOUND:key 不存在。
    • CLIENT_ERROR:自增值不是对象。
    • ERROR其他错误,如语法错误等。

    decr 命令

    decr 命令的基本语法格式如下:

    decr key decrement_value

    参数说明如下:

    • key:键值 key-value 结构中的 key,用于查找缓存值。
    • decrement_value: 减少的数值。

    实例

    set visitors 0 900 2
    10
    STORED
    get visitors
    VALUE visitors 0 2
    10
    END
    decr visitors 5
    5
    get visitors
    VALUE visitors 0 1
    5
    END

    在以下实例中,我们使用 visitors 作为 key,初始值为 10,之后进行减 5 操作。

    输出

    输出信息说明:

    • NOT_FOUND:key 不存在。
    • CLIENT_ERROR:自增值不是对象。
    • ERROR其他错误,如语法错误等。
     

    Memcached flush_all 清理命令

    Memcached flush_all 命令用于用于清理缓存中的所有 key=>value(键=>值) 对。

    该命令提供了一个可选参数 time,用于在制定的时间后执行清理缓存操作。

    语法:

    flush_all 命令的基本语法格式如下:

    flush_all [time] [noreply]

    实例

    清理缓存:

    set runoob 0 900 9
    memcached
    STORED
    get runoob
    VALUE runoob 0 9
    memcached
    END
    flush_all
    OK
    get runoob
    END
  • 相关阅读:
    115. Distinct Subsequences
    91. Decode Ways
    72. Edit Distance
    python 输出 a+b
    求次小生成树
    判断最小生成树是否唯一
    二分法求最优值
    黑科技
    线段树+ 区间更新
    2018ICPC青岛赛区J题
  • 原文地址:https://www.cnblogs.com/wenhongyu/p/7284284.html
Copyright © 2011-2022 走看看