Redis Blpop

Redis Blpop
Este artículo aprenderá cómo usar el comando Redis BLPOP para administrar listas. En Redis, una lista no es más que una colección de valores de cadena ordenados por el orden de inserción.

Las listas son algunos de los tipos más comunes y valiosos en Redis. No solo porque proporcionan una mejor experiencia de memoria en comparación con otros tipos como hashes, sino porque son fáciles de usar y gestionar.

Comencemos con lo básico.

Redis Crear lista

Dado que Redis es una base de datos de valor clave, necesitamos crear una clave para contener una lista de elementos.

Redis usa el concepto de izquierda y derecha para agregar y eliminar elementos. Entonces, por ejemplo, para agregar un elemento a la izquierda de la lista, usamos el comando lpush. Para la inserción correcta, use el comando rpush.

Tome el ejemplo que se muestra a continuación:

127.0.0.1: 6379> LPUSH Languages ​​Python
(entero) 1

En el comando de ejemplo anterior, usamos el comando lpush para crear una nueva clave que contiene un elemento en la lista.

Después de la creación, podemos agregar elementos como se muestra en los comandos de ejemplo a continuación:

127.0.0.1: 6379> Lenguas LPush JavaScript Ocaml Elixir C C++

Nota: También puede usar el comando rpush, como se muestra en el ejemplo a continuación:

127.0.0.1: 6379> Rpush Lenguages ​​SQL Java C#

Tenga en cuenta que el orden de inserción es importante en una lista.

Sugerencia: una sola lista en Redis puede contener hasta 4 mil millones de elementos.

Los elementos de la lista de recuperación de redis

Para obtener los elementos almacenados en una lista, usamos el comando lRange seguido de los valores de compensación de inicio y finalización. El desplazamiento, en este caso, representa el índice del elemento en la lista.

La indexación para una lista de Redis comienza en 0.

Por ejemplo, para recuperar todos los elementos del índice 0, podemos ejecutar el comando:

127.0.0.1: 6379> Lenguas Lrange 0 -1

Pasar la lista Inicio de inicio como 0 y el último desplazamiento como -1 devuelve todos los elementos en la lista.

El comando debe devolver los elementos en la lista como se muestra:

1) "C ++"

2) "C"

3) "Elixir"

4) "Ocaml"

5) "JavaScript"

6) "Python"

7) "SQL"

8) "Java"

9) "C#"

Comandos Redis LPOP y BLPOP

Cuando se trata de eliminar elementos en una lista, encontrará dos comandos principales:

LPOP y tlop.

Nota: puede aprender sobre el comando LREM en este artículo <- click here.

El comando LPOP eliminará y devolverá el primer elemento en la lista. Un uso de ejemplo es como se muestra a continuación:

127.0.0.1: 6379> Idiomas LPOP
"C ++"

Dado que el comando LPOP devuelve el valor real eliminado, es adecuado para el seguimiento de los cambios en su aplicación.

El comando BLPOP, por otro lado, es la versión de bloqueo del comando LPOP. Elimina y devuelve el primer elemento en una lista. Sin embargo, a diferencia del comando LPOP, bloquea la conexión para una duración especificada hasta que esté disponible uno.

Considere el ejemplo que se muestra a continuación:

127.0.0.1: 6379> blpop mykey 10

Pasamos una clave inexistente al comando BLPOP en el comando de ejemplo anterior. También especificamos la duración del bloque como 10 segundos. Si no hay un elemento disponible en la lista especificada después de transcurrido, el comando devuelve nil.

El comando anterior debe regresar (después de 10 segundos).

127.0.0.1: 6379> blpop mykey 10
(nulo)
(10.05s)

Si el elemento existe en la lista especificada, lo elimina y lo devuelve como se muestra:

127.0.0.1: 6379> Lengues BLPOP 10
1) "Idiomas"
2) "C"

En este caso, el comando devuelve la clave desde la que elimina un elemento y el elemento real eliminado.

No espera a que se transfiera la duración especificada.

Conclusión

Este tutorial cubrió las listas de Redis y cómo usarlas en su base de datos. Discutimos: Crear una lista de Redis, agregar elementos, recuperar elementos de la lista y eliminar las claves de una lista.

Gracias por leer!!