php - 使用 Redis 集群和事务

标签 php laravel redis lumen predis

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

Cannot use 'MULTI' with redis-cluster.

只需以下调用:

Redis::multi();

有没有办法在不使用事务的情况下确保跨集群的数据完整性,因为那是不可能的

最佳答案

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

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

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

关于php - 使用 Redis 集群和事务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51513863/

相关文章:

python - 如何在 Redis 中查找地理位置相近的文档,例如 MongoDB 中的 $near?

redis - "next"对 Redis 的 INCR 命令意味着什么?

php - $conn->query(...) 的结果是否可以为 0 条记录不为空

php - Laravel 5.6 单元测试在 null 上调用成员函数 beginTransaction()

php - 如何通过 HTML/PHP 按钮执行 MYSQL 查询

php - 使用 Route::is() 检查路由是否为主页

javascript - Rails/Laravel 生态系统相当于 Javascript/NodeJS 生态系统吗?

redis - 对 Redis 中的值进行分类......我应该使用集合还是键?

php - MongoDB 搜索 - 自动完成

php - 使用 SELECT 查询从两个表获取结果