Redis Transaktion
Redis Transaktion auf einmal mehrere Befehle ausführen, und mit zwei wichtigen Garantien:
- Eine Transaktion ist eine separate Quarantäne Aktion: Alle Befehle sequentiell serialisierten Transaktion ausgeführt sind. Während der Ausführung der Transaktion nicht durch den Client gesendet werden unterbrochen, um einen Befehl anzufordern.
- Eine Transaktion ist eine atomare Operation: Befehle in der Transaktion sind entweder alle ausgeführt oder gar nicht ausgeführt.
Eine Transaktion von Anfang bis zur Ausführung durch den folgenden drei Stufen:
- Beginnen Sie mit der Transaktion.
- Befehl in das Team.
- Die Durchsetzungsabteilung.
Beispiele
Das Folgende ist ein Beispiel für eine Transaktion, es begann zunächst ein Geschäft mitMULTI, dann mehrere Befehle in Teams um die Transaktion, durch letzte EXEC- Befehl Transaktion ausgelöst, zusammen mit allen Befehlen in einer Transaktion:
redis 127.0.0.1:6379> MULTI OK redis 127.0.0.1:6379> SET book-name "Mastering C++ in 21 days" QUEUED redis 127.0.0.1:6379> GET book-name QUEUED redis 127.0.0.1:6379> SADD tag "C++" "Programming" "Mastering Series" QUEUED redis 127.0.0.1:6379> SMEMBERS tag QUEUED redis 127.0.0.1:6379> EXEC 1) OK 2) "Mastering C++ in 21 days" 3) (integer) 3 4) 1) "Mastering Series" 2) "C++" 3) "Programming"
Redis Transaktionsbefehl
In der folgenden Tabelle sind die Befehle für redis Angelegenheiten:
Nein. | Befehl und Beschreibung |
---|---|
1 | Aussonderungs Brechen Sie die Transaktion, geben alle Befehle innerhalb einer Transaktion ausgeführt. |
2 | EXEC Führen Sie alle Transaktionen innerhalb des Blocks. |
3 | MULTI Es markiert den Beginn einer Transaktion blockieren. |
4 | unwatch Abbrechen UHR Befehl alle Tasten zu überwachen. |
5 | UHR Taste [key ...] Überwachen Sie einen (oder mehrere) Taste, wenn diese (oder diese) Taste anderen Befehlen geändert wurde, bevor die Transaktion ausgeführt wird, wird die Transaktion abgebrochen. |