lua脚本问题

lua脚本问题

为什么要用lua脚本;在做删除的时候不能用redistemplate先查出来再删除,lua脚本里也是这样的逻辑。

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
Mr_Raymond 2020-08-03 20:14:17
Redis在执行lua脚本的时候,使用的是和lua一样的解析器。
Redis会保证脚本执行是一个原子操作:
    当一个脚本被执行时,其他的脚本和Redis命令将无法执行。

同时,意味着,在Redis上执行慢脚本不是一个好主意。

--Redis官网 https://redis.io/commands/eval


凌波微步 2020-07-10 05:25:40

先查再删不能保证原子性

  • 提问者 三个太阳2 #1
    分布式锁的过期时间设置时常,再生产环境中一般怎么确定的呢,万一时间设置太短了,key失效了,分布式锁就失效了。
    2020-07-10 10:10:36
  • 凌波微步 回复 提问者 三个太阳2 #2
    这个度 只能自己把握了。 看看你接口的响应时间。
    2020-07-10 11:22:59
  • 老师,lua脚本也是先查再删,为什么就能保证一致性呢?
    2020-08-03 19:59:56
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师