×

redis取值命令

redis取值命令(redis.call()和redis.pcall()的区别)

admin admin 发表于2024-01-08 04:57:16 浏览34 评论0

抢沙发发表评论

本篇文章给大家谈谈redis取值命令,以及redis.call()和redis.pcall()的区别对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。

本文目录

redis.call()和redis.pcall()的区别

redis.call() 与 redis.pcall()很类似, 他们 唯一的区别是当redis命令执行结果返回错误时, redis.call()将返回给调用者一个错误,而redis.pcall()会将捕获的错误以Lua表的形式返回

redis.call() 和 redis.pcall() 两个函数的参数可以是任意的 Redis 命令:

需要注意的是,上面这段脚本的确实现了将键 foo 的值设为 bar 的目的,但是,它违反了 EVAL 命令的语义,因为 脚本里使用的所有 键 都应该由 KEYS 数组来传递 ,就像这样:

要求使用正确的形式来传递键(key)是有原因的,因为不仅仅是 EVAL 这个命令, 所有的 Redis 命令,在执行之前都会被分析 ,籍此来确定命令会对哪些键进行操作。

因此,对于 EVAL 命令来说,必须使用正确的形式来传递键,才能确保 分析工作正确地执行

除此之外,使用正确的形式来传递键还有很多其他好处,它的 一个特别重要的用途就是确保 Redis 集群可以将你的请求发送到正确的集群节点。 (对 Redis 集群的工作还在进行当中,但是脚本功能被设计成可以与集群功能保持兼容。)不过,这条规矩 并不是强制性的, 从而使得用户有机会滥用(abuse) Redis 单实例配置(single instance configuration ), 代价是这样写出的脚本不能被 Redis 集群所兼容。

redis中怎么根据key获取值

redis的值有5种类型,不同的类型有不同的命令来获取:字符直接 get key队列 左端弹出一个元素 LPOP key哈希 HGET key field 集合 SMEMBERS key 返回集合中的所有元素有序集合ZRANGE key start stop更详细的命令可以查看redis常用命令。

如何读取redis中的key值中的结果

首先要链接redis客户端redis-cli 然后要通过key来查找你存的数据,相当于一个数组,有key,有value,通过key来查看value的值。keys * 注:列出当前redis存储的全部key。keys W* 注:列出当前redis存储的key名里第一个是“W”的全部key。找到key名字后,就可以查看key里存了什么值了。get WXOX 注:WXOX是你查出来的key的名字。然后就可以看到WXOX里存了什么东西了,可能存了一个字符串,也可能存了一个对象,要是空的话,就会输出nil,意思是啥也没有!

如果你还想了解更多这方面的信息,记得收藏关注本站。