gpt4 book ai didi

redis - 连接关闭时 key 过期

转载 作者:可可西里 更新时间:2023-11-01 11:44:15 25 4
gpt4 key购买 nike

我正在尝试使用 Redis 获取分布式锁。谷歌搜索后我找到了一个解决方案 https://github.com/jeffomatic/redis-exp-lock-js/blob/master/js/lib/redis_lua.js

但是这个解决方案的问题是:如果应用程序崩溃。没有办法在超时前恢复锁。我想要的是,在连接关闭时自动使 key 过期。redis中有没有命令/过期设置?用于在连接关闭时使 key 过期。

最佳答案

不,redis 不会为你做这些(你只能在客户端做)

要缓解此死锁问题,您可以采取的措施是存储上次获取的时间戳,并使用它来确定锁是否仍然有效或者它是否是死锁。

如果存储在其中的值设置得太早(例如,current_time - lock_time > timeout),获取锁的客户端将忽略它。

注意:这需要同步客户端的时钟。

编辑:

如果 LUA 是您的一个选项,那么您不需要客户端有同步时钟

关于redis - 连接关闭时 key 过期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17079723/

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