使用Redis集群和事务

时间:2018-07-25 08:07:15

标签: php laravel redis lumen predis

使用Redis集群时,出现以下错误:

Cannot use 'MULTI' with redis-cluster.

通过以下调用:

Redis::multi();

有没有一种方法可以确保整个群集中的数据完整性而无需使用事务,因为这是不可能的

1 个答案:

答案 0 :(得分:1)

如果密钥位于不同的插槽/节点上,Redis不支持事务。

如果必须将数据存储在集群中,则必须确保与交易相关的所有密钥都存储在单个插槽中。您可以使用hash tag来做到这一点。

然后,您可以将拥有插槽的节点作为单个Redis实例,并在该节点上运行事务。