Creazione di transazioni in Redis

Creazione di transazioni in Redis
Se sei serio nei confronti di Redis, vorrai utilizzare le transazioni per gestire i tuoi dati. Le transazioni Redis non sono molto diverse dalle transazioni in un database relazionale.

Una transazione di database si riferisce a una singola unità di lavoro composta da domande singole a più. Nei casi, un'operazione può essere classificata come transazione solo se ci sono modifiche al database.

Non ci occuperemo di questo, ma impareremo come usare il comando di orologio insieme alle transazioni Redis per questo.

Quali sono le transazioni?

In Redis, le transazioni comprendono quattro comandi principali: orologio, exec, scartare e multi.

Usando i comandi sopra, è possibile aprire un blocco e aggiungere più comandi tutti in una volta. Una volta completato, si esegue i comandi come una singola unità.

Affinché una transazione abbia successo, Redis garantisce questo:

  1. Tutti i comandi specificati in un'unità di transazione sono eseguiti consecutivamente. Quindi, il primo arrivo, prima corsa.
  2. Tutti i comandi in un'unità di transazione devono eseguire correttamente. Se uno dei comandi nell'unità non riesce, anche l'intero blocco delle transazioni non riesce. Questa funzione è nota come esecuzione del comando atomico
  3. Terzo, i comandi in una transazione sono serializzati. Quindi, un client non può essere un server mentre un'unità di transazione è eseguita.

Redis Crea transazione

Si crea un'unità di transazione utilizzando il comando multi. Il comando multi tornerà ok. Puoi andare avanti e aggiungere tutti i comandi di transazione uno dopo l'altro.

Invece di eseguire i comandi, Redis li metterà in inserzione fino a quando non li chiami.

Un esempio è come mostrato di seguito:

127.0.0.1: 6379> Multi
OK

Redis Esegui unità di transazione

Redis metterà in fila i comandi in un'unità di transazione fino a quando non li eseguirà manualmente.

Possiamo farlo usando il comando Exec. Questo dice a Redis di eseguire tutti i comandi in coda nell'ordine di inserimento.

Un utilizzo di esempio è come mostrato di seguito:

127.0.0.1: 6379> Imposta NewKey "100"
Messo in coda
127.0.0.1: 6379> Incr NewKey
Messo in coda
127.0.0.1: 6379> Ottieni NewKey
Messo in coda
127.0.0.1: 6379>

Noterai che ogni comando eseguito viene messo in coda. Un comando in coda è un comando che è programmato per l'esecuzione dopo che viene chiamato.

Per eseguirlo, chiama il dirigente come:

127.0.0.1: 6379> Exec
1) OK
2) (intero) 101
3) "101"

Ciò dovrebbe eseguire tutti i comandi e restituire i valori risultanti.

Redis Rimuovi la coda di comando

Supponiamo di voler pulire la coda di comando e sciacquare tutti i comandi pianificati? Per questo, puoi usare il comando scarto come mostrato:

127.0.0.1: 6379> Multi
OK
127.0.0.1: 6379> Imposta NewKey "100"
Messo in coda
127.0.0.1: 6379> Incr NewKey
Messo in coda
127.0.0.1: 6379> Ottieni NewKey
Messo in coda
127.0.0.1: 6379> scartare
OK

Dopo aver eseguito il comando scarto, Redis restituirà OK e chiuderà l'unità di transazione.

Conclusione

Questo breve articolo descrive come lavorare e utilizzare le transazioni Redis nel database. Controlla la risorsa qui sotto per saperne di più.

https: // redis.IO/Argomenti/Transazioni