Lua脚本尝试访问群集节点中的非本地密钥

这里

env:Redis群集

你好 我的要求是:

以键A的方式找到值B(过程是使用键A来找到值A,值A ==键B,使用键B来找到值B)

我的lua看起来像这样:

[root @ ml-208 redis]#cat x-userid-tag.lua

local f3=redis.call('HGET',KEYS[1],'1'); local f4=redis.call('HGET',f3,'1') ; return f4;

我的redis cmd:

./bin/redis-cli -c -h 192.168.33.203 -p 6000 --eval ./x-userid-tag.lua 0C559F3FEF368A8B53DE69C267423F0E

错误消息:(错误)ERR错误正在运行脚本(调用f_9bd20ba85f7bcc8ee1f6b55c4158bfa93eba2221):@user_script:2:@user_script:2:Lua脚本试图访问群集节点中的非本地密钥

斯波克

Lua脚本仅在一个Redis实例上运行,并且其内部查询不会被集群重定向,因此,如果它们存在于另一个集群中,则它无法查询两个键。

在您的情况下,keyA和valueA(即keyB)被散列到不同的插槽和不同的节点,因此lua将不起作用。

解决它的一种方法是将以下内容作为键和值。

如果您有一个'key1',并且其值为'value1',而不是将其value / key2保留为'value1',则应将其保留为'{key1}:value1'。Redis将确保将'key1'和'{key1}:value1'都散列到单个节点,并且您将能够使用lua查询这两个节点。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Firstore节点中无法访问文档密钥

在点中找到节点的群集/子图

访问 anytree 节点中的 **kwargs

从所有Vespa群集节点中删除索引

如何在每个节点中的SOM图上获取群集数?

Mulesoft本地群集的节点处于“未知”状态

了解节点中的非阻塞IO

在节点中访问构造函数变量。js

无法访问XML节点中的@attributes

Lua出现Redis错误:脚本尝试访问不存在的全局变量'require'

如何自动在节点中解决依赖关系(本地和远程)

Service Fabrice本地群集管理器节点设置错误

Docker:群集工作节点未找到本地构建的映像

尝试在节点中合并pdf文件:PDFUnite + Nodejs

尝试在Mathjax节点中使用“ useFontCache:false”

尝试在节点中呈现 JSX 时出现意外令牌

XSLT 尝试从兄弟节点中提取数据

有没有办法在GKE群集节点中启用嵌套虚拟化?

Docker服务在n-1个群集节点中创建n个副本

我可以使用本地主机而不是Nifi群集中的实际节点IP地址访问Nifi Rest-API吗?

NiFi:无法将节点连接到群集,因为本地流与群集流不同

doMPI无法识别R脚本的群集中的其他节点

访问节点中的ORM数据后快速回调

通过节点中的原型访问变量的值

使用get函数访问存储在节点中的数据

使用ElementTree时如何访问XML节点中的数据

无法访问节点中循环外的数组

使用IPython访问MPI群集中的多个节点

使用MSI从本地Service Fabric群集访问Key Vault