Redis与Optimistic并发控制: is it possible?

标签 redis

在将实体存储在 redis 中作为序列化二进制 blob 的应用程序中工作。我有多个客户端处理同一个数据集,我希望使用乐观并发。

我的要求是:

  1. 在一次往返中读取特定键的序列化实体
  2. 将修改后的实体写回redis。如果任何其他客户端在读取和写入之间修改了实体,则操作将失败

这可以在redis中实现吗?如果是这样:应该执行哪些 redis 命令来执行此操作?

最佳答案

WATCH 键GET 键MULTISET 键,然后是EXEC。如果键的值在您执行 WATCH 后更改,则 EXEC 将失败。

http://redis.io/topics/transactions#cas

关于Redis与Optimistic并发控制: is it possible?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8121378/

相关文章:

redis - 子进程如何更新父进程中的变量?

redis - Redis 中的 LIST 替代方案

C# redis vs mongodb 性能

sockets - 通过 Node.js 上的套接字连接 Redis

MongoDB 与 Redis 与 Cassandra 的快速写入临时行存储解决方案

redis - 如何在python中使用redis设计多进程程序

algorithm - 优化算法以降低时间复杂度(使用的 redis 数据类型)

go - 从 Redis 获取结构数组时解码错误

php - 在不严重影响数据库的情况下在分页表中显示大量数据

ruby - 800 名 worker 后重新请求超时