gpt4 book ai didi

database - Redis 存储(或任何数据库?)锁定机制 (NodeJS)

转载 作者:IT王子 更新时间:2023-10-29 06:03:29 25 4
gpt4 key购买 nike

我遇到以下问题:我正在使用 RedisNodeJS一起通过mranney's driver我的 NodeJS 网络服务器正在从 Redis 检索一些数据,对其进行一些操作并将其保存回 Redis。但是此操作(称为 X)可能需要一段时间,因此多个用户可以同时在相同资源上触发它。

因此,如果用户 A 触发 X,而用户 B 同时触发 X,我希望用户 A 完成工作,然后用户 B 获取(已处理的)数据并执行 X。同时,用户 B 等待。用户的顺序无关紧要 - 一次只有一个。那么如何在我的场景中实现这一点呢?如何锁定/解锁Redis?有可能吗?

最佳答案

有几种方法可以在 Redis 中实现锁定,在不了解更多场景的情况下,听起来 SETNX 会起作用。参见 Design pattern: Locking with SETNX在 Redis 文档中。另外,transactions in Redis阅读起来可能很有趣,但我怀疑这并不是您在这种情况下所追求的。

关于database - Redis 存储(或任何数据库?)锁定机制 (NodeJS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9497432/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com