Redis Exec-Befehl
Der Redis Exec-Befehl wird verwendet, um alle Befehle innerhalb eines Transaktionsblocks auszuführen.
Syntax
Die grundlegende Syntax des Redis Exec-Befehls lautet wie folgt:
redis 127.0.0.1:6379> Exec
Verfügbare Versionen
>= 1.2.0
Rückgabewert
Die Rückgabewerte aller Befehle im Transaktionsblock, angeordnet in der Reihenfolge, in der die Befehle ausgeführt wurden. Wenn der Vorgang unterbrochen wird, wird ein nil-Wert zurückgegeben.
Beispiele
# 事务被成功执行 redis 127.0.0.1:6379> MULTI OK redis 127.0.0.1:6379> INCR user_id QUEUED redis 127.0.0.1:6379> INCR user_id QUEUED redis 127.0.0.1:6379> INCR user_id QUEUED redis 127.0.0.1:6379> PING QUEUED redis 127.0.0.1:6379> EXEC 1) (integer) 1 2) (integer) 2 3) (integer) 3 4) PONG # 监视 key ,且事务成功执行 redis 127.0.0.1:6379> WATCH lock lock_times OK redis 127.0.0.1:6379> MULTI OK redis 127.0.0.1:6379> SET lock "huangz" QUEUED redis 127.0.0.1:6379> INCR lock_times QUEUED redis 127.0.0.1:6379> EXEC 1) OK 2) (integer) 1 # 监视 key ,且事务被打断 redis 127.0.0.1:6379> WATCH lock lock_times OK redis 127.0.0.1:6379> MULTI OK redis 127.0.0.1:6379> SET lock "joe" # 就在这时,另一个客户端修改了 lock_times 的值 QUEUED redis 127.0.0.1:6379> INCR lock_times QUEUED redis 127.0.0.1:6379> EXEC # 因为 lock_times 被修改, joe 的事务执行失败 (nil)
Andere Erweiterungen