在EVALSHA中生成新密钥

时间:2016-08-02 12:11:32

标签: lua redis

Documentation表示必须明确传递密钥,因此如果使用Redis群集,则可以将命令转发到相应的节点。

但是,这也适用于新密钥吗?例如,如果我有一个脚本来注册一个新实体,并且这样的脚本动态创建一个由INCR和文字结果组成的全新密钥,那么Redis集群会出现问题吗?

另一种方法是在单独的操作中调用INCR并将密钥作为KEY [1]传递给脚本。

1 个答案:

答案 0 :(得分:1)

如果您小心确保将新密钥与其他密钥一起放在同一台服务器上,我认为您会没事的。

也就是说,Cluster的重要之处不仅在于预先声明您的密钥,还要确保您的脚本操作的所有密钥都位于同一台服务器上。您可以使用hash tags对密钥执行此操作。如果您构建新密钥的方式使其与其他密钥一起散列到同一个插槽,我认为它可以正常工作。