redis
光军丶
这个作者很懒,什么都没留下…
展开
-
Redis的setNX用于加锁
今天看项目代码发现这个,所以了解了下,记录下来。setNX是「SET if Not eXists」的缩写,当要设置的数据不存在才会设置进去,这样可以达到加锁的效果。 要点: 1、加完锁也就是设置数据之后,如果返回成功那么需要设置一个过期时间,不然出现异常没有释放锁,永远会缓存起来。 2、如果A程序执行时间很长,大于过期时间这个时候就会出现,另外的B程序设置锁,等到A执行完,就会出现误删B的锁...原创 2018-07-27 18:00:23 · 1095 阅读 · 0 评论 -
工作中遇到的并发问题
业务线的服务rpc接口请求到基础服务,由于业务线放开了限制,导致1s中能请求几次到几十次不等的相同请求。导致相关数据重复入库,数据库中多了很多的重复和异常数据。 1、对于短时间内的请求,加上redis锁进行拦截,针对业务请求中有唯一的业务id号,所以就对这个id加锁(https://blog.csdn.net/lhp534/article/details/81251689),这样能够拦截...原创 2018-10-11 14:59:53 · 571 阅读 · 0 评论