华夏棋牌

目录 搜索
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
文字

RPOPLPUSH source destination

自1.2.0起可用。

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

原子前往并移除存储在列表中的列表的最后一个元素(尾部)source,并按下存储在列表中第一个元素(头部)的元素destination

例如:推敲source拿着清单a,b,c,然后destination拿着清单x,y,z。推行RPOPLPUSH招致source持有a,bdestination持有c,x,y,z

假定source不存在,nil则前往该值而且不推行任何操作。假定sourcedestination华夏棋牌类似,该操作相当于从列表中删除最后一个元素,并将其作为列表的第一个元素推入,是以可以将其视为列表改变敕令。

前往值

华夏棋牌批量字符串回复:正在弹出和推送的元素。

例子

redis>  RPUSH mylist "one" (integer) 1 

redis>  RPUSH mylist "two" (integer) 2 

redis>  RPUSH mylist "three" (integer) 3 

redis>  RPOPLPUSH mylist myotherlist "three" 

redis>  LRANGE mylist 0 -1 1) "one" 2) "two" 

redis>  LRANGE myotherlist 0 -1 1) "three"

形式:可靠的行列

Redis通常用作新闻转达服务器来完成后台作业或其他类型的新闻转达义务的处置赏罚赏罚。通常可以经由历程将值推入临盆者端的列表中,并应用RPOP(应用轮询)在破费者端期待此值,或经由历程阻挡操作为客户端供应更好的服务来完成BRPOP,从而取得质朴的行列形式。

可是,在这类情形下,所取得的行列是不可靠的,由于能够会损掉落新闻,例如在存在群集效果的情形下或破费者在收到新闻以后瓦解但依然要处置赏罚赏罚的情形下。

RPOPLPUSH(或阻挡变体的BRPOPLPUSH)供应了一种防止尔效果的措施:破费者提撤新闻并同时将其推入处置赏罚赏罚列表。一旦新闻已被处置赏罚赏罚,它将应用LREM敕令来从处置赏罚赏罚列表中删除新闻。

特殊的客户端能够会监视处置赏罚赏罚列表中生涯的项目太多时间,而且会在须要时再次将这些超时项目推入行列中。

形式:循环列表

运用具有类似源和目的密钥的RPOPLPUSH,客户端可以应用单个LRANGE操作在O(N)中一个接一个地会见N元素列表中的一切元素,而无需应用单个LRANGE操作将完全列表从服务器传输到客户端。

华夏棋牌纵然有以下两个条件,上述形式依然有用:

  • 华夏棋牌有多个客户端轮换列表:他们将取得不合的元素,直到列表中的一切元素都被会见,而且历程重新启动。

  • 纵然其他客户在列表末尾起劲推出新项目。

上述内容使得完成一套系统必须由N名使命职员尽能够快地处置赏罚赏罚一套物品变得异常质朴。一个例子是一个监控系统,它必须应用年夜量的并行使命职员来检查一组网站能否可以会见,并尽能够延伸延迟。

请重视,这类使命者的完成是可升级且可靠的,由于纵然新闻损掉落,项目依然内行列中,而且将不才一次迭代中处置赏罚赏罚。

上一篇: 下一篇: