redis-分布式锁样例

发布时间 2023-06-27 12:01:47作者: 356a

redisTemplate:

string lockKey = "product_101"
string clientID = UUID.randomUUID().toString()
bool result = redisTemplate.opsForValue().setIfAbsent(lockKey,clientID,10,TimeUnit.SECONDS)
if(!result)
{
  return "error_code"
}
try{
//业务逻辑
}finally{
  if(clientID.equals(redisTemplate.opsForValue().get(lockKey)))
  {
  redisTemplate.delete(lockKey)
  }
}

与注意事项对应关系如下所示
https://www.cnblogs.com/dengliang356a/p/17508140.html