gpt4 book ai didi

用于使用 'match' 和 'count' 约束进行扫描的 Lua 脚本

转载 作者:可可西里 更新时间:2023-11-01 11:36:44 31 4
gpt4 key购买 nike

我正在使用 Jedis。我需要一个 Lua 脚本来扫描具有指定限制的模式。我不知道如何在 Lua 脚本中传递参数。示例代码:

String script="return     {redis.call('SCAN',KEYS[1],'COUNT',KEYS[2],'MATCH',KEYS[3]}";
List<String> response = (List<String>)jedis.eval(script,cursor,COUNT,pattern);

如何将这些参数传递给脚本?

最佳答案

您的代码有几点需要修复。

  • 在扫描命令中,'match'参数应该放在'count'之前。
  • 只有当 KEYS 是 Redis 键的地方时,你才应该使用它。其他事情应该交给 ARGV。
  • 调用 Jedis.eval() 时忘记指定键数。

所以,你的代码的固定版本是,

String script="return {redis.call('SCAN',ARGV[1],'MATCH',ARGV[2],'COUNT',ARGV[3])}";
List<String> response = (List<String>)jedis.eval(script, 0, cursor, pattern, COUNT);

但我同意 Itamar 改用 Jedis.scan()。

希望这对您有所帮助。

关于用于使用 'match' 和 'count' 约束进行扫描的 Lua 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32064689/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com