¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Fundamentos de Valkey

Aquí está la lección completa para leer. Crea una cuenta gratuita para practicarla en un laboratorio en vivo.

Laboratorio de contenedores8 min de lectura8 comandos

Qué vas a hacer

Un almacén clave-valor guarda un valor bajo un nombre y te lo devuelve cuando pides ese nombre. Las páginas web lo usan para recordar la sesión de un visitante o para contar visitas, porque responde en una fracción de milisegundo. Valkey es uno gratuito que entiende los mismos comandos que Redis. Vas a guardar y recuperar un valor, hacer que un valor caduque y conocer una lista, un hash y un contador.

Antes de empezar

Nota

Pulsa Iniciar el laboratorio en la barra de la parte superior de esta lección y espera a que diga que está en marcha. El almacén es un servicio llamado valkey, y el terminal llega hasta él por ese nombre. Cada botón Ejecutar de abajo escribe su comando en el terminal de tu laboratorio, uno detrás de otro y en la misma sesión. Para verlos, o para escribir los tuyos, pulsa Abrir el terminal (pestaña nueva) en la barra.

1. Saluda al almacén

Este terminal no tiene un cliente de Valkey, así que el primer comando fabrica uno muy pequeño: una función llamada v que envía sus palabras al almacén por el puerto 6379 con nc e imprime lo que vuelve. La función no imprime nada por sí sola. Después, SET guarda un valor bajo una clave y el almacén responde +OK. GET lo pide: la respuesta es $5, la longitud del dato, y en la línea siguiente hello.

Comando
v() ( printf '%s\r\n' "$*" | nc -w 1 valkey 6379 )

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
v SET greeting hello

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
v GET greeting

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

2. Haz que un valor caduque

EX 5 significa que esta clave vive cinco segundos, y v TTL code en tu propio terminal imprime cuántos segundos le quedan, si eres rápido. Ejecuta el segundo comando pasados unos seis segundos: la respuesta es $-1, la forma que tiene el almacén de decir que ahí no hay nada. Así se consigue que la sesión de un usuario caduque.

Comando
v SET code 1234 EX 5

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
v GET code

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

3. Una lista, un hash y un contador

RPUSH añade elementos al final de una lista y responde cuántos tiene ahora, :3. HSET guarda campos con nombre dentro de una clave, es decir, un hash, y responde cuántos ha añadido, :2. INCR suma uno a un número y responde el valor nuevo, :1: púlsalo otra vez y sale :2, y mil visitantes a la vez se contarían igualmente bien. En tu propio terminal, v LRANGE tasks 0 -1 lee la lista y v HGETALL user:1 lee el hash. Una respuesta que empieza por : es un número y una que empieza por $ es un texto.

Comando
v RPUSH tasks wake eat code

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
v HSET user:1 name Ada born 1815

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Comando
v INCR visits

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

4. Mira qué se conserva

Pulsa Detener el laboratorio en la barra y después Iniciar el laboratorio otra vez. El terminal nuevo ha olvidado v, así que pulsa el primer botón Ejecutar del paso 1 para crearla de nuevo y luego el de v GET greeting: sigue siendo hello, y code hace tiempo que caducó. Valkey guarda todo en la memoria, y por eso es rápido, y anota cada escritura en un archivo dentro de un volumen con nombre, que la plataforma conserva, para poder reconstruir la memoria al arrancar. Un almacén sin ese archivo empezaría vacío cada vez.

Para el profesorado

Consejo

Esta lección es un pequeño ejemplo de una lección practicada en un laboratorio: los pasos y los botones Ejecutar son la lección, y el laboratorio es la copia propia de cada alumno. El laboratorio es un servicio pequeño y un volumen con nombre, y nada de lo que hay aquí se corrige solo: el alumno entrega las respuestas de su propia sesión, una clave con caducidad y TTL, una lista, un hash y un contador, con una frase sobre lo que hizo la caducidad y lo que se conservó tras una parada y un nuevo inicio. Cópiela en su propio módulo y modifíquela, o cree una desde cero con el menú Laboratorio del constructor de lecciones.

Sobre este laboratorio y su código: Laboratorio de Valkey: aprende un almacén clave-valor compatible con Redis, con expiración y listas

¿Enseñas a una clase? Asigna estas lecciones a tus estudiantes con calificación y un laboratorio para cada uno.