redis
qq_34893654
这个作者很懒,什么都没留下…
展开
-
redis watch应用---购物车
如果库存充足,则使用MULTI命令开启一个事务,将商品库存减少购买数量,并执行事务。在执行事务之前,Redis会再次检查商品的库存是否发生变化,如果库存数量发生了变化,则事务执行失败。在以上示例中,我们首先使用WATCH命令监视商品库存,然后读取商品库存,并检查库存是否充足。如果库存不足,则使用UNWATCH命令解除监视,并返回“库存不足”错误。如果事务执行成功,则返回“购买成功”信息,否则重新开始循环,重新进行监视和检查。原创 2023-04-17 14:03:53 · 69 阅读 · 0 评论 -
redis watch应用---限流
如果请求计数未超过限制,则使用MULTI命令开启一个事务,将请求计数增加1,并执行事务。在执行事务之前,Redis会再次检查请求计数是否发生变化,如果请求计数发生了变化,则事务执行失败。在以上示例中,我们首先使用WATCH命令监视请求计数的键,然后读取请求计数的值,并检查它是否超过限制。如果请求计数超过限制,则使用UNWATCH命令解除监视,并返回false。如果事务执行成功,则返回true,表示请求计数增加成功,否则重新开始循环,重新进行监视和检查。原创 2023-04-17 14:01:30 · 64 阅读 · 0 评论 -
redis watch应用---分布式锁
在释放锁时,我们使用WATCH命令监视锁键,避免并发修改锁键。我们首先读取锁键的值,并检查它是否匹配锁值。如果匹配,则使用DEL命令删除锁键。最后,我们使用UNWATCH命令解除监视,并释放连接。在以上示例中,我们首先使用SET命令尝试设置锁键,如果设置成功,则返回锁值。如果锁键已经存在,则使用TTL命令获取锁的过期时间,并在锁已经过期的情况下尝试重新设置锁键。原创 2023-04-17 13:59:04 · 133 阅读 · 0 评论