在java的過程中,會碰到一些多臺服務器并行處理請求獲邏輯的問題,如果一個東西執(zhí)行多次,查詢影響性能,增刪則會造成臟數(shù)據(jù),一旦和錢相關,可能會造成無法挽回的損失。
這里就需要分布式鎖來保證流程執(zhí)行次數(shù);
分布式鎖的執(zhí)行方式
redis 的setnx 方式
setnx key value 將當前key的值設置為value
如果key不存在,則返回1,并設置,如果key存在,返回0,
通過返回值來獲取鎖,
通過del來釋放鎖
即可判斷當前任務是否有執(zhí)行過,避免同時執(zhí)行的情況發(fā)生