Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Transacciones | Características Avanzadas y Seguridad
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Introducción a Redis

bookTransacciones

Todos los comandos dentro de la transacción se ejecutan simultáneamente. Si uno de los comandos falla, ninguno de ellos será ejecutado. Esto garantiza la consistencia de los datos al evitar cambios parciales o inválidos, incluso si ocurren errores.

Cómo se utilizan las transacciones

Las transacciones se aplican comúnmente cuando se deben realizar múltiples operaciones sobre los datos en conjunto, como incrementar un contador y escribir datos relacionados en otra clave. El uso de transacciones garantiza que todas las operaciones se completen, o ninguna lo haga, manteniendo la integridad de los datos.

Comandos principales para transacciones

Para iniciar una transacción en Redis, utilice el comando MULTI. Esto informa a Redis que todos los comandos posteriores deben formar parte de la transacción.

Una vez que se emite MULTI, Redis pone en cola los comandos que se desean incluir en la transacción.

MULTI
SET key1 "value1"
SET key2 "value2"

En este ejemplo, los comandos SET key1 "value1" y SET key2 "value2" no se ejecutan inmediatamente. En su lugar, se agregan a la cola de transacciones y se ejecutan juntos cuando se llama al comando EXEC.

Ejecución de una transacción

Para ejecutar todos los comandos en la transacción, utilice el comando EXEC. Esto ejecuta cada comando en cola dentro de la transacción.

EXEC

Después de llamar a EXEC, ambas operaciones SET serán ejecutadas.

Cancelar una transacción

Si se decide cancelar una transacción antes de la ejecución, se utiliza el comando DISCARD. Esto elimina todos los comandos en la cola de transacciones, asegurando que no serán ejecutados.

DISCARD

Después de llamar a DISCARD, todos los comandos añadidos a la transacción desde MULTI serán descartados y no se ejecutarán.

Monitoreo de claves durante una transacción

Durante una transacción, los comandos se ponen en cola pero no se ejecutan inmediatamente. El comando WATCH puede utilizarse para monitorear claves específicas. Si alguna de estas claves es modificada antes de que la transacción sea ejecutada, la transacción será abortada para evitar conflictos de datos.

WATCH key1
MULTI
SET key1 "new_value"
EXEC

En este ejemplo, si el valor de key1 cambia antes de que se llame al comando EXEC, la transacción no será ejecutada. Esto garantiza la consistencia de los datos, especialmente cuando múltiples clientes intentan modificar la misma clave simultáneamente.

1. ¿Qué sucede si uno de los comandos en una transacción de Redis falla?

2. ¿Qué comando debe utilizarse para iniciar una transacción en Redis?

question mark

¿Qué sucede si uno de los comandos en una transacción de Redis falla?

Select the correct answer

question mark

¿Qué comando debe utilizarse para iniciar una transacción en Redis?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 2

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

Can you explain how the MULTI, EXEC, DISCARD, and WATCH commands work in more detail?

What happens if a command inside a transaction fails?

Can you give a real-world example of when to use transactions in Redis?

bookTransacciones

Desliza para mostrar el menú

Todos los comandos dentro de la transacción se ejecutan simultáneamente. Si uno de los comandos falla, ninguno de ellos será ejecutado. Esto garantiza la consistencia de los datos al evitar cambios parciales o inválidos, incluso si ocurren errores.

Cómo se utilizan las transacciones

Las transacciones se aplican comúnmente cuando se deben realizar múltiples operaciones sobre los datos en conjunto, como incrementar un contador y escribir datos relacionados en otra clave. El uso de transacciones garantiza que todas las operaciones se completen, o ninguna lo haga, manteniendo la integridad de los datos.

Comandos principales para transacciones

Para iniciar una transacción en Redis, utilice el comando MULTI. Esto informa a Redis que todos los comandos posteriores deben formar parte de la transacción.

Una vez que se emite MULTI, Redis pone en cola los comandos que se desean incluir en la transacción.

MULTI
SET key1 "value1"
SET key2 "value2"

En este ejemplo, los comandos SET key1 "value1" y SET key2 "value2" no se ejecutan inmediatamente. En su lugar, se agregan a la cola de transacciones y se ejecutan juntos cuando se llama al comando EXEC.

Ejecución de una transacción

Para ejecutar todos los comandos en la transacción, utilice el comando EXEC. Esto ejecuta cada comando en cola dentro de la transacción.

EXEC

Después de llamar a EXEC, ambas operaciones SET serán ejecutadas.

Cancelar una transacción

Si se decide cancelar una transacción antes de la ejecución, se utiliza el comando DISCARD. Esto elimina todos los comandos en la cola de transacciones, asegurando que no serán ejecutados.

DISCARD

Después de llamar a DISCARD, todos los comandos añadidos a la transacción desde MULTI serán descartados y no se ejecutarán.

Monitoreo de claves durante una transacción

Durante una transacción, los comandos se ponen en cola pero no se ejecutan inmediatamente. El comando WATCH puede utilizarse para monitorear claves específicas. Si alguna de estas claves es modificada antes de que la transacción sea ejecutada, la transacción será abortada para evitar conflictos de datos.

WATCH key1
MULTI
SET key1 "new_value"
EXEC

En este ejemplo, si el valor de key1 cambia antes de que se llame al comando EXEC, la transacción no será ejecutada. Esto garantiza la consistencia de los datos, especialmente cuando múltiples clientes intentan modificar la misma clave simultáneamente.

1. ¿Qué sucede si uno de los comandos en una transacción de Redis falla?

2. ¿Qué comando debe utilizarse para iniciar una transacción en Redis?

question mark

¿Qué sucede si uno de los comandos en una transacción de Redis falla?

Select the correct answer

question mark

¿Qué comando debe utilizarse para iniciar una transacción en Redis?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 4. Capítulo 2
some-alt