zoukankan      html  css  js  c++  java
  • Redis中set、setnx、setex区别

    1、SET key value
    含义:
    将字符串值 value 关联到 key 。
    如果 key 已经持有其他值, SET 就覆写旧值,无视类型。

    2、SETEX key seconds value
    含义:
    将值 value 关联到 key ,并将 key 的生存时间设为 seconds (以秒为单位)。
    如果 key 已经存在, SETEX 命令将覆写旧值。
    返回值:
    设置成功时返回 OK 。
    当 seconds 参数不合法时,返回一个错误。

    3、SETNX key value
    含义:
    将 key 的值设为 value ,当且仅当 key 不存在。
    若给定的 key 已经存在,则 SETNX 不做任何动作。
    SETNX 是『SET if Not eXists』(如果不存在,则 SET)的简写。
    返回值:
    设置成功,返回 1 。
    设置失败,返回 0 。

    标注:目前在最新的jedis版本3.5.1中,也没有发现setnx方法支持过期时间的设置,所以setnx对过期时间的设置不是很友好,不能保持原子性

    4、GETSET key value
    含义:
    将给定 key 的值设为 value ,并返回 key 的旧值(old value)
    当 key 存在但不是字符串类型时,返回一个错误。
    返回值:
    返回给定 key 的旧值。
    当 key 没有旧值时,也即是, key 不存在时,返回 null 。

    郭慕荣博客园
  • 相关阅读:
    _status()函数
    _clear87()函数
    _clear87()函数
    _clear87()函数
    _clear87()函数
    南邮NOJ1009 2的n次方
    南邮NOJ2063 突发奇想的茂凯
    南邮NOJ2063 突发奇想的茂凯
    【HDOJ】1297 Children’s Queue
    【HDOJ】2103 Family planning
  • 原文地址:https://www.cnblogs.com/jelly12345/p/14391792.html
Copyright © 2011-2022 走看看