华夏棋牌

目录 搜索
Cluster cluster addslots(集群 槽位) cluster count failure reports(集群计数掉落败申报) cluster countkeysinslot cluster delslots cluster failover cluster forget cluster getkeysinslot cluster info cluster keyslot(集群键槽) cluster meet cluster nodes(集群节点) cluster replicate(集群复制) cluster reset(集群重置) cluster saveconfig cluster set config epoch cluster setslot cluster slaves cluster slots readonly readwrite Connection auth echo ping quit select swapdb Geo geoadd geodist geohash geopos georadius georadiusbymember Hashes hdel hexists hget hgetall hincrby hincrbyfloat hkeys hlen hmget hmset hscan hset hsetnx hstrlen hvals HyperLogLog pfadd pfcount pfmerge Keys del dump exists expire expireat keys migrate move object persist pexpire pexpireat pttl randomkey rename renamenx restore scan sort touch ttl type unlink wait Lists blpop brpop brpoplpush lindex linsert llen lpop lpush lpushx lrange lrem lset ltrim rpop rpoplpush rpush rpushx Pub/Sub psubscribe publish pubsub punsubscribe subscribe unsubscribe Scripting eval evalsha script debug script exists script flush script kill script load Server bgrewriteaof bgsave client getname client kill client list client pause client reply client setname command command count command getkeys command info config get config resetstat config rewrite config set dbsize debug object debug segfault flushall flushdb info lastsave monitor role save shutdown slaveof slowlog time Sets sadd scard sdiff sdiffstore sinter sinterstore sismember smembers smove spop srandmember srem sscan sunion sunionstore Sorted Sets zadd zcard zcount zincrby zinterstore zlexcount zrange zrangebylex zrangebyscore zrank zrem zremrangebylex zremrangebyrank zremrangebyscore zrevrange zrevrangebylex zrevrangebyscore zrevrank zscan zscore zunionstore Strings append bitcount bitfield bitop bitpos decr decrby get getbit getrange getset incr incrby incrbyfloat mget mset msetnx psetex set setbit setex setnx setrange strlen Transactions discard exec multi unwatch watch
文字

EXPIRE key seconds

自1.0.0起可用。

时间严重年夜度: O(1)

设置超时key。超时过时后,密钥将自动删除。在 Redis 术语中,有联系关系超时的密钥通常被以为是不稳固的。

超时只能经由历程删除或笼罩密钥内容的敕令扫除,网罗 DEL,SET,GETSET 和一切*STORE敕令。这意味着一切在看法上改变华夏棋牌存储在密钥中的值而不用新密钥替换的操作都邑使超时保持稳固。例如,应用 INCR 增添一个键的值,用 LPUSH 将一个新值推入一个列表,或许用 HSET 改变一个散列的字段值都是会使超时保持稳固的操作。

华夏棋牌超时也能够或许被扫除,应用 PERSIST 敕令将密钥恢复为耐久密钥。

华夏棋牌假定应用 RENAME 重命名密钥,则相关的生计时间将转移到新的密钥称谓。

假定某个密钥被 RENAME 笼罩,就像现有密钥Key_A被类似的挪用笼罩的情形一样RENAME Key_B Key_A,原始的密码能否与Key_A超时相关着实不主要,新密钥Key_A将一连一切的特点Key_B

请重视,以非起劲的超时或 EXPIREAT / PEXPIREAT 挪用带有之前时间的 EXPIRE / PEXPIRE 将招致密钥被删除而不是过时(照顾地,收回的要害事宜将del不会expired)。

Refreshing expires

可以应用一个曾经存在过时集的键作为参数来挪用 EXPIRE。在这类情形下,密钥的生计时间会更新为新值。有许多有用的应用法式模范模范,下面的导航会话形式部门简介了一个示例。

Redis之前的差异2.1.3

2.1.3之前的 Redis 版本中,应用改变其值的敕令更改具有过时荟萃的密钥具有完全移除密钥的效果。这类语义是须要的,由于现在曾经修复了复制层的限制。

EXPIRE 将前往0,而且不会更改设置了超时的密钥的超时。

前往值

整数回复,详细为:

  • 1 假定超时被设置。

  • 0假定key不存在。

例子

redis>  SET mykey "Hello" "OK" 

redis>  EXPIRE mykey 10 (integer) 1 

redis>  TTL mykey (integer) 10 

redis>  SET mykey "Hello World" "OK" 

redis>  TTL mykey (integer) -1

形式:导航会话

想象一下你有一个群集服务,而且你对用户比来会见过的比来N个网页感兴趣,这样每个相邻的网页浏览都不会在前一个网页中推行逾越60秒。从看法上讲,您可以将这组页面视为用户的导航会话,能够网罗有关他或她以后正在查找的产物的滑稽信息,以便推荐相关产物。

华夏棋牌您可以应用以下战略轻松在 Redis 中对此形式阻拦建模:每次用户推行页面视图时,都邑挪用以下敕令:

MULTI
RPUSH pagewviews.user:<userid> http://.....EXPIRE pagewviews.user:<userid> 60EXEC

假定用户余暇时间逾越60秒,则该键将被删除,而且只需小于60秒的后续页面检查才会被纪录上去。

这类形式很容易修改成应用 INCR 而不是应用 RPUSH 的列表。

过时的钥匙

华夏棋牌通常情形下,Redis 密钥培植时没有联系关系的生计时间。除非用户以明确的要领删除密钥,例如应用 DEL 敕令,否则密钥将永世存在。

EXPIRE 系列敕令能够将过时与给定密钥相联系关系,但须要应用密钥所应用的一些特殊内存。当密钥设置过不时,Redis 将确保在指定的时间量之前时移除密钥。

华夏棋牌应用 EXPIRE 和 PERSIST 敕令(或其他严酷相关的敕令)可以更新或完全删除生计的要害时间。

到期准确性

华夏棋牌在 Redis 2.4中,expire 能够不是准确的,它能够在0到1秒之间。

由于 Redis 2.6 的过时弱点是从0到1毫秒。

过时和耐久

华夏棋牌密钥过时信息存储为相对 Unix 时间戳(Redis 版本2.6或更高版本以毫秒为单元)。这意味着纵然 Redis 实例未处于运动状态,时间仍在运动。

华夏棋牌为了过时使命,电脑的时间必须保持稳固。假定您从两台盘算机中移动一个RDB文件并在其时钟中推行年夜的异步操作,能够会发生滑稽的使命(例如加载时一切加载的密钥都邑过时)。

纵然正在运转的实例也会检查盘算机时钟,是以,例如,假定您设置的密钥的生计时间为1000秒,然后将盘算机的时间设置为未来2000秒,密钥将急速过时,而不是一连1000秒。

Redis 若何过时密钥

华夏棋牌Redis 密钥有两种过时要领:自动要领和自动要领。

当某个客户端试图会见密钥时,密钥自动地过时,而且发现密钥超时。

虽然这还不够,由于有过时的密钥永世不会被再次会见。岂论若何,这些密钥应当过时,是以 Redis 会定期在密钥中随机测试几个密钥并设置过时。一切已过时的密钥都将从密钥空间中删除。

华夏棋牌详细来讲,这是 Redis 每秒推行10次的操作:

  1. 从要害荟萃中检测20个随神秘害字并带有联系关系的过时。

  1. 删除一切过时的密钥。

  1. 假定逾越25%的密钥过时,请从第1步重新泉源。

华夏棋牌这是一个眇乎小哉的概率算法,基本上假定是我们的样本代表了一切密钥空间,而且我们一连过时直到能够过时的密钥的百分比低于25%

华夏棋牌这意味着在任何给准时间,曾经由时的应用存储器的最年夜密钥数目最多即是每秒写入操作的最年夜数目除以4。

怎样在复制链接和AOF文件中处置赏罚赏罚过时

华夏棋牌为了在不殉国不合性的情形下取得准确的行动,当密钥过不时,将在 AOF 文件中剖析一个 DEL 操作并取得一切毗连的从站。这样,到期历程集中在主实例中,而且不存在不合性弱点的能够性。

可是,虽然毗连到主服务器的从服务器不会自力应用密钥(但会期待来自主服务器的 DEL),但它们仍会接纳数据集中存在的已满过时的完全状态,是以,当从服务器选择为控制它将能够自力过时,完全充当主人。

上一篇: 下一篇: