redis分佈式鎖setnx實現總結

使用setnx的思路:

對於多個實例,涉及到修改redis的value值的場景,需要用到分佈式鎖。

主要理解點:

1.lock的key與待鎖的key的關係?

2.過期時間的設置?

3.未獲得鎖怎麼辦?

當了解setnx的api之後,lock的key與待鎖的key之間是對應的。通常是加個前綴區分一下。

過期時間不能設置過短,否則當A實例的代碼邏輯沒執行完畢鎖就被釋放,其他示例獲得鎖,造成髒數據。

未獲得鎖時可以循環等待,一直執行判斷。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章