redisson官方文件
1.匯入相關依賴
這裡我只匯入redisson,其他還需要redis的依賴
org.redisson<
/groupid>
redisson<
/artifactid>
3.12
.5<
/version>
<
/dependency>
2.新增redisson核心配置
/**
* @description: redisson核心配置
* @author tao
* @date 2020/7/17 15:33
*/@configuration
public
class
myredissonconfig
}
3.測試是否配置成功
注入成功!!!
3.業務**
//優點-解決了手動實現分布式鎖的自動續期問題
//1.鎖的自動續期,如果業務時間過長,執行期間會自動給鎖續上30s,不用擔心業務時間過長的,鎖自動過期被刪除
//2.加鎖的業務只要執行完成,就不會給當前鎖續期,即使不手動解鎖,鎖預設在30s以後也會自動刪除,避免死鎖問題
("/redissomlock"
)public r redissomlock()
throws interruptedexception
}finally
system.out.
println
("快取中拿資料");
return r.ok(
).setdata
(data)
;}
4.檢視效果13001
達到理想效果!!!分布式情況下併發請求也只有乙個請求進入db,其他都從快取中取資料,也沒有異常情況,這裡可以模擬一下業務時間過程redis中的ttl時間自動續期30s的效果,還可以模擬業務**跑著跑著掛掉了,但是還沒有走到解鎖的地方,30s過後自動解鎖,防止死鎖的問題!!!
Redisson實現分布式鎖
引入包 org.redissongroupid redissonartifactid 3.10.0version dependency redissonconfig類 package com.xiepanpan.locks.lockstest.config import org.redisson.r...
RedisSon實現分布式鎖
主要步驟 1 引入redisson的依賴 2 配置redisson的配置類 3 使用redisson構建分布式鎖,在需要使用分布式鎖的地方注入redissonclient這個類來獲取鎖 第一步 引入依賴 org.springframework.boot spring boot starter par...
Redisson分布式鎖實現
3.14.0redisson org.redissongroupid redisson spring boot starterartifactid version dependency 基於redis集群 spring redis password timeout 5000 cluster 集群,以...