天天看點

Redis Setnx 指令(轉)

Redis Setnx 指令

Redis 字元串(string)

Redis Setnx(SET if Not eXists) 指令在指定的 key 不存在時,為 key 設定指定的值。常用來作為分布式鎖,傳回 1 則設定成功,傳回 0 則設定失敗,也就是加鎖失敗,有值時不能被修改,沒值時才能被設定。嘗嘗結合逾時時間參數來使用。

文法

redis Setnx 指令基本文法如下:

redis 127.0.0.1:6379> SETNX KEY_NAME VALUE

傳回值

設定成功,傳回 1 。 設定失敗,傳回 0 。

執行個體

redis> EXISTS job                # job 不存在
(integer) 0

redis> SETNX job "programmer"    # job 設定成功
(integer) 1

redis> SETNX job "code-farmer"   # 嘗試覆寫 job ,失敗
(integer) 0

redis> GET job                   # 沒有被覆寫
"programmer"      

繼續閱讀