【redis集群】阿里云redis集群 对lua脚本的支持程度

1 阿里云集群 对lua脚本的支持程度

https://help.aliyun.com/document_detail/26356.html

Lua使用限制

Lua脚本放开限制,标准版-双节点、标准版-单节点支持用户直接调用。

集群版本条件性支持:
a 所有key都应该由KEYS数组来传递,redis.call/pcall中调用的redis命令,key的位置必须是KEYS array(不能使用Lua变量替换KEYS),否则直接返回错误信息,"-ERR bad lua script for redis cluster, all the keys that the script uses should be passed using the KEYS array\r\n"。

b 所有key必须在1个slot上,否则返回错误信息,"-ERR eval/evalsha command keys must be in same slot\r\n"。

c  调用必须要带有key,否则直接返回错误信息, "-ERR for redis cluster, eval/evalsha number of keys can't be negative or zero\r\n"。

2 解决方案

业务层保证key数组都落在一个solt中就可以关闭阿里云对lua脚本的限制!

你可能感兴趣的:(redis)