Redis分布式鎖簡單實戰

2021-10-10 06:10:00 字數 1419 閱讀 9383

redis就話不多說了,上乾貨。。

1、引包

redis.clients<

/groupid>

jedis<

/artifactid>

2.9.3

<

/version>

<

/dependency>

org.springframework.boot<

/groupid>

spring-boot-starter-redis<

/artifactid>

jedis<

/artifactid>

redis.clients<

/groupid>

<

/exclusion>

<

/exclusions>

<

/dependency>

2、注入進來封裝工具類

@autowired

private jediscluster jediscluster;

3、用就完事了,參考**step 1 2 3 4

業務場景:

我這是個定時任務,會部在多台伺服器上,所以有併發問題,需要加分布式鎖

/**

* 定時任務 - 批量清分

*/@component

public

class

batchsortoutscheduletask")

private string serviceid;

@value

("$"

)private string path;

@value

("$"

)private string joncorn;

@value()

private string env;

@autowired

private jediscluster jediscluster;

private

static string lock_name=

"lock_batchsortoutschedule"

;// 每天凌晨12點同步當天確認函號中間4位(不含4)最大值到快取

@scheduled

(cron =

"$")

public

void

synmaxletterno()

catch

(exception e)

finally

}//step 3、獲取鎖失敗,啥也不做

}else

}}

簡單聊聊分布式鎖 Redis分布式鎖

單機redis分布式鎖 單機redis分布式鎖 首先咱們先聊聊單機的redis分布式鎖 第乙個最普通的實現方式,就是在 redis 裡使用 setnx 命令建立乙個 key,這樣就算加鎖。set resource name my random value nx px 30000執行這個命令就 ok。...

Redis分布式鎖,開發實戰

背景 專案的定時任務,出現重複執行的情況。由於解決時間非常緊急。打算用redis自帶的分布式鎖 setnx key value設定鍵的值,僅當鍵不存在時 redis官方文件setnx key value 將 key 的值設為 value 當且僅當 key 不存在。若給定的 key 已經存在,則set...

Redis分布式鎖簡單實現

偽 下訂單 1 查庫存 getstock 2 判斷庫存 stock 0下單 3 下單 addorder 4 減庫存 public class redisutils setnx param key param value param seconds 過期時間,單位秒 return public sta...